Linux常用命令
1.Linux
1.1Linux概述
LInux之父是芬兰计算机程序员 Linus Torvalds。他在1991年创建了Linux内核,并成为了Linux操作系统的主要构架师和开发者。Liuns Torvalds的贡献使得Linux成为了世界上最流行的开源操作系统之一。
Ubuntu是基于Linux开源的操作系统,对于嵌设备非常友好,后续开发环境都基于Ubuntu实现。
学习任务
- Linux系统操作命令
- Linux系统的目录结构
- 后续Linux内核编译
1.2 Ubuntu中的常见命令
1.21终端打开和目录打开
所以的命令都是在终端中打开,工作目录Woke Directory
终端打开推荐方式
锁定到启动器,方便后续的使用
工作目录情况
1.2.2 cd切换工作目录
cd ==> change directory 切换工作目录路径,如果考虑图形化界面,对应的就是打开目标文件夹
- 切换路径需要提供目标文件夹的路径情况
- 相对路径 列如 隔壁教师 ,已知的所在位置为参考物
- 绝对路径 列如 北京市朝阳区三里屯…
- Linux 操作系统路径情况,目录文件夹情况
- Linux系统不分盘!!!所有的文件都是从【根目录】开始,【根目录】标识/
- . 和…
- .表示当前工作目录
- …表示当前工作目录的上级目录
命令案列
- 相对目录是. , … 或者直接文件夹名称
- 绝对路径是已/根目录开头的路径,并且每一个文件或者文件夹的绝对路径唯一!
junn@junn:~$ pwd # pwd 所看到的当前目录为绝对目录
/home/junn# 当前用户的家目录,对应的真实完整的绝对目录
junn@junn:~$ cd 桌面 #cd 从当前目录,切换到家目录下的桌面,此路径为相对路径
junn@junn:~/桌面/111$ cd . # "." 表示当前工作目录
junn@junn:~/桌面/111$ cd .. # 当前目录的上一个目录
1.2.3 ls 查看文件夹内容命令
查看指定目录中的文件,或者文件夹内容,可以支持命令行参数,提供不同的内容展示。
- -a all 查看所有文件和文件夹包括隐藏文件,Liunx中隐藏文件或者文件夹都是 . 名称开头
- -l list 列表模式查看文件内容,包括文件或者文件夹的相关信息,最后修改信息,占用磁盘空间大小,归属权。
- -al 列表方式查看当前工作目录下的所有文件或者文件夹
~$ ls -a # 查看当前工作目录下的所有文件或者文件夹
~$ ls -l # 列表方式查看当前工作目录下的文件或者文件夹
~$ ls -al # 列表方式查看当前工作目录下的所有文件或者文件夹
1.2.4 touch 创建文件
可以在具备写入权限的文件夹中,创建指定的文件
$ touch 1.txt #创建指定的文件
$ touch 2.cpp 9.txt 56. #创建多个指定的文件
$ touch .3.c #创建隐藏指定的文件
1.2.5 mkdir 创建文件夹
可以在具备写入的文件夹中,创建指定的文件夹
$ mkdir a # 创建指定文件夹
$ mkdir a d h j k l # 创建多个指定文件夹
$ mkdir a # 创建隐藏文件夹
1.2.6 cp 复制 mv 移动
cp 可以复制文件和文件夹
mv 可以对文件,文件夹进行移动或者重命名
cp
~/桌面/aaa$ cp 1.txt 10.txt # 当前文件夹中的 1.txt 复制一份,目标文件名称为 10.txt
~/桌面/aaa$ cp 1.txt ./a/10.txt # 当前文件夹中的 1.txt 复制一份,目标文件在当前工作目录下 a 文件夹中,并且目标文件名称为 10.txt
~/桌面/aaa$ cp 1.txt ./a # 当前文件夹中的 1.txt 复制一份,复制到目标文件夹 a 中,文件名保留原本名称
~/桌面/aaa$ cp a h # 将 a 文件夹复制一份,h 文件夹不存在,复制的文件夹最终名称为 h
# 错误!
cp: 略过目录'a' # 命令行错误提示
~/桌面/aaa$ cp a c # 将 a 文件夹复制一份,c 文件夹存在,复制内容放入到 c 文件夹中
# 错误!
cp: 略过目录'a' # 命令行错误提示
~/桌面/aaa$ cp -rf a h # 需要添加 -rf 命令行参数
~/桌面/aaa$ cp -rf a b # 需要添加 -rf 命令行参数
mv
~/桌面/aaa$ mv 1.c 10.c # 1.c 文件改为 10.c 文件
~/桌面/aaa$ mv 10.c a # 10.c 文件移动到 a 文件夹中
# 文件夹操作考虑后续的文件夹是否存在.
~/桌面/aaa$ mv c d # 将 C 文件夹移动到 D 文件夹中
~/桌面/aaa$ mv e d/ee # 将 E 文件夹移动到 D 文件夹中,并且修改名称为 EE
~/桌面/aaa$ mv f Z # 将 F 文件夹重命名为 Z 文件夹
1.2.7 rm (慎用)
可以用于删除文件和文件夹,删除操作不会降文件放入回收箱中,时直接在磁盘中抹掉对应的数据
$ rm 1.txt # 删除文件
$ rm 1.c 10.c # 删除多个文件
$ rm *.txt # * 是一个通配符,删除当前以txt为后缀的所有文件
$ rm 1.* # * 是一个通配符,删除当前文件夹中的所有文件名称为 1, 后缀名不限制的所有文件.
$ rm *.txt # 删除当前以txt为后缀的所有文件
# 删除文件夹需要加入-rf 命令行参数
$ rm -rf a # 删除文件夹
1.2.8 chomd 修改文件,文件夹权限命令
主要修改的内容是文件操作RWX
权限 | 字符 | 值 |
---|---|---|
可读 | r | 4 |
可写 | w | 2 |
可执行 | x | 1 |
无权限 | - | 0 |
举例说明
角色 权限情况 对应数值 拥有者 rwx 7 同组用户 r-x 5 访客 r-x 5 当前权限标记为“755”权限
角色 权限情况 对应数值 拥有者 r-x 5 同组用户 r– 4 访客 r– 4 当前权限标记为“544”权限
1.2.9 sudo 超级权限命令
开启超级管理员权限,临时授予操作权限之外的情况。
$ gedit /etc/samba/smb.conf # 对应文件打开没有修改权限,只读文档
$ sudo gedit /etc/samba/smb.conf # 当前文件可以读取,可以修改
[sudo] 用户 的密码: # 需要提供当前用户密码,Linux 当前输入密码,没有任何的提示。
# 在终端没有关闭的情况下,后续使用 sudo 操作,不需要再次提供密码。
1.2.10 ifconfig 和ping
- ifconfig 显示当前电脑的网络情况
- ping 用于测试网络到目标地址的情况
$ ifconfig
$ ping www.baiddu.com
入密码,没有任何的提示。
在终端没有关闭的情况下,后续使用 sudo 操作,不需要再次提供密码。
##### 1.2.10 ifconfig 和ping
> - ifconfig 显示当前电脑的网络情况
> - ping 用于测试网络到目标地址的情况
```sh
$ ifconfig
$ ping www.baiddu.com