2.1系统目录结构
2.1.1根下常见目录概览
- /root 超级管理员root用户的家目录
- /home 普通用户家目录的根目录
- /etc 存放配置文件相关的目录
- /boot 系统启动相关的文件
- /dev 设备相关的文件
- /bin 普通用户所使用的命令相关的文件,/sbin也存放了命令是为超级用户准备的
- /lib 存放库相关的文件/lib64同样
- /media 媒介目录。插入U盘会自动放到这个目录下
- /mnt 临时挂载目录
- /proc 系统进程相关目录
- /run 存放进程产生的临时文件,一关机就消失
- /srv 服务产生的文件
- /sys 存放系统内核相关的文件
- /tmp 临时目录,权限很低任何用户都可以使用。
- /usr 用户相关的文件,比如/usr/bin /usr/sbin /usr/lib
- /var 日志相关的文件
tree命令
tree 【参数】 (目录)
2.3 ls命令
ls 【选项】 (文件或目录)
2.3.1 ls的常用选项:
- -l 显示文件的详细信息,包含文件的类型,文件的权限,inode个数,所有者,所属组,文件大小,创建时间,文件名
- -i 显示文件的inode号。inode存放的是文件的详细信息(也就是-l出来的内容),和文件所在的磁盘物理位置。
- -h 自动适配文件大小的单位。
- -a 也就是all显示所有的文件,包含隐藏文件。隐藏文件或目录以“.”开头。
- -t 显示内容按文件创建的时间排序(由早到晚排)
- -d 只显示目录本身而不是目录下的内容
2.3.2 ls -l中inode的个数。
- 每个文件或目录的inode编号是唯一的。如果有两个文件使用的inode编号相同,那么我们认为他们是同一个文件。
- ls -l中显示的inode编号个数代表了:有多少个文件或目录,使用了和当前文件或目录相同的inode编号。
- 每个目录的inode个数:目录本身,目录下的.和这个目录的子目录下的…之和。
2.3.3 ll命令是ls -l的简写。
2.4 文件类型
ls -l所显示的内容,其中第一列的第一位表示文件的类型
2.4.1 文件有哪些类型
- - 普通文件
- d 目录
- l 软链接文件(类似windows快捷方式)
- c 字符串设备文件键盘鼠标之类
- b 块设备文件,磁盘光盘之类
- s sockte文件,用于系统进程或服务之间的通信。
2.5 alias命令
2.5.1查看一个命令的具体路径
which (command)
2.5.2 查看所有命令的别名
2.5.3 $PATH变量定义的路径。在这些路径下的命令,可以在任何路径生效。
echo $PATH #显示变量
2.5.4 定义一个命令的别名
alias 别名=‘命令及参数’
2.5.5取消别名
unalias 别名
2.6相对和绝对路径
2.6.1路径:一个文件或目录从根开始的位置。
2.6.2绝对路径:从根目录开始的路径被称为绝对路径。
2.6.3当前用户家目录路径“~”:带有~符号的路径也是从根开始的,因此也属于绝对路径。
2.6.4相对路径:相对于当前目录所在的路径为相对路径。
2.7 cd命令
2.8 创建和删除目录mkdir rmdir
2.8.1 mkdir
2.8.2 rmdir
- rmdir 删除一个空的目录(目录非空不能删除)
- rmdir -p 级联删除一串空的目录
2.9 rm命令
- rm 删除文件,删除时会提示是否删除。默认会附带选项-i。使用/usr/bin/rm就不会有提示。
- rm -f 强制删除没有任何提示,包括错误信息也不提示。
- rm -r 删除目录
- rm -v 删除时可以看到删除的过程
2.10 环境变量PATH
- 如果命令在$PATH定义的路径下,可以在任何路径执行。
- 临时在 P A T H 下 添 加 路 径 : P A T H = PATH下添加路径:PATH= PATH下添加路径:PATH=PATH:目录
- 永久在$PATH下添加路径:vi /etc/profile
2.11 cp命令
2.12 mv命令
- mv 把源文件移动至目标位置(默认附加-i选择)
- 如果目标是一个目录,将直接移动至这个目录下
- 如果目标是一个文件且不存在,将被视为移动并改名。
- 如果目标是一个文件且存在,将提示覆盖文件(直接使用/usr/bin/rm 命令将不提示覆盖)。
- 如果源是一个目录,目标目录存在将会把源目标移动至目标目录之下。
- 如果源是一个目录,目标目录不存在被视为移动并改名。
2.13 文档查看cat_more_less_head_tail
2.13.1 cat命令
- cat 文件 查看文件内容
- tac 文件 倒序查看文件内容
- cat -A 显示所有字符,包括换行,结束。等隐藏符号。
- cat -n 显示行号
2.13.2 more命令
- more 文件 分屏显示文件内容。
- 显示时按“空格” 向下翻页,看完全部自动退出
- 显示时按“ctrl+b"向向上翻页
2.13.3 less命令
- less 命令 分屏显示文件内容。看完后不自动退出。按q键退出。
- 显示时按上下箭头一行一行的查看。
- 和more的翻页方式相同。
- 向下查找功能“/”: /查找内容 #会将查找内容高亮。
- 查找下一个相同内容 按字母“n”键。查找上一个相同内容shift+n
- 向上查找功能“?”: ?查找内容 #会将查找内容高亮。
- 查找上一个相同内容 按字母“n”键。查找下一个相同内容shift+n
- shift+g 定位至文件未尾
- 按一下g 定位至文件开头
2.13.4 head&tail
- head 显示文件开头10行内容
- head -n 显示文件开头n行内容
- tail 显示文件倒数10行内容
- tail -n 显示文件未尾n行内容
- tail -f 动态显示文件未尾10行内容
2.14 文件或目录权限chmod
2.14.1文件的权限
- ls -l文件第一段从2-10个字符表示这个文件的权限
- 这九个字符被分为三段
- 这三段分别对应这个文件的 所有者:所属组:其他用户
- 每段的三个字符分别表示可读r,可写w,可执行x.没有相应的权限显示-
- 权限rwx的数字表现形式为r=4 w=2 x=1
- 例:rwxr-xr-x =755 rw-r–r-- =644
2.14.2 chmod的用法
2.14.3 权限赋位值方法
- u=所有者权限,g=所属组权限,o=其他用户权限
- u+或- 为所有者添加或取消权限,g和o同理。a为所有用户
- 数字赋值法第一位u第二位g第三位o。7=rwx 6=rw- 5=r-x 4=r-- 3=-wx 2=-w- 1=–x
2.15 更改所有者和所属组chown,chgrp
2.15.1 chown
- 为文件修改所有者和所属组
chown 用户:组 文件
- 可以省略:组,即为只更改所有者
- 可以省略用户,即为只更改所属组(注意保留冒号)
- -R 级联更改目录及其子目录下的文件
2.15.2 chgrp
- 为文件修改所属组
chgrp 组名 文件
- -R 级联更改目录及其子目录下的文件
2.16 umask
umask值定义了用户创建文件或目录时的默认权限
2.16.1 文件和目录默认的最大权限。
- 文件666
- 目录777
- 目录必须有x也就是执行权限,所以目录的最大权限比文件高1
2.16.2创建文件和目录的默认权限分别是666减umask值和777减umask值
2.16.3权限运算不是单纯的数字运算。
- 运算规则是把数字转换为字母形式。
7=rwx 6=rw- 5=r-x 4=r-- 3=-wx 2=-w- 1=–x
- 任何权限减同位权限等于-
- 任何权限减-等于任何权限
- -减任何权限等于-