ls 命令讲解
man (menu)
man ls —— 查看ls命令的说明文档 b,f上下翻页 q退出
ls --help ——查看ls帮助信息
常用的类型
-a 查看隐藏的文件或者目录
-A 查看隐藏的 .开头文件,但不包含 . 和 ..
-l 查看文件的详细信息(时间、大小、权限、属主、属组、文件的属性)
-la 查看包括隐藏文件的详细信息
查询结果 首字符 和各文件颜色:
d 表示目录 (蓝色)
- 表示普通文件 (白色)
l 表示软链接文件 (亮蓝色)
b表示块设备文件(磁盘,光驱)(黄色)
c 表示字符设备文件(鼠标、键盘)(黄色)
s 套接字文件(socket文件,是Linux系统里用来通信的,进程间通信的文件)(粉色)
p 管道文件 ( 命名管道 , | 是匿名管道)
可执行文件 (绿色)
压缩文件 (红色)
多媒体文件 (紫色)
socket文件类似于win的 TCP\IP 文件,Xshell和远程的端口进行的通信就是TCP通信
ls -l /XXX/ 和 ls -ld /XXX/的差别:
ls -l /XXX/ 看的是/xxx/里面包含什么文件
ls -ld /XXX/ 看的是这个目录本身的属性
ls -lt 会按时间顺序去排序包含的文件,最新的在最上面
ls -i 查看文件的硬链接
i 就是 inode,是在格式化磁盘时候生成的存储区域的硬链接,好比格式化时候规划好的某一小区间的编号。
33574978 就是文件anaconda-ks.cfg的硬链接
ls -as 加s 以后文件会显示文件大小
ls -ash 加上h,按人习惯显示出所定义的单位KB
ll 是 ls -l 的简写,效果一模一样. ( ll == ls -l ) ,alias 别名。
文件查询结果第一段字符串,除去首字母,是文件权限:
除去首字母剩下的9位划分为3小段,分别对应
所有者、所属组、其他用户 的权限
*访问者的身份都是相对的*,因此 root 也可能是其他用户
当一个文件的所有者是 root 时,此文件的其他用户自然就是 其他的普通用户。
当一个文件的所有者是 普通用户 时,如果 root 也没在该文件的用户组内, root 也只能是此文件的其他用户
因此,对于文件的访问者只是一种身份,这在我们登录 root 用户直接执行操作时候看不出区别,但是在使用中很多自动写入的时候是有区别的。
每一组权限定义:
r (read) 可读 ,权限是4 , 100B
w (write) 可写 , 权限是2, 010B
x (execute) 可执行,权限是1, 001B
rwx 可读,可写,可执行 的权限就是 111B,就是7
rw- 可读,可写,不可执行 的权限就是 110B,就是6
-w- 不可读,可写,不可执行 的权限就是 010B,就是 4
- - - 就是什么权限都没有
把这三组人的权限转换成数字,就有了之前设置权限时,
用过的数字chmod 6 0 0 filename 其中 6 0 0 就是 rw- - - - - - - 意思
,每一个数字是对应一个用户组的权限。
7是rwx 读写执行都有
rwx rwx rwt
普通用户的特殊权限 —— t 权限 (stick 权限),普通的用户中谁创建的文件谁做主。(当然root权限肯定还是可以操作)
root 组也有个特殊权限 rws
紧跟着权限后面最后的一个点是表明这个文件是跟SElinux相关的属性,有的文件有,有的文件没有
这个是属组
文件大小
月 日 时间 文件名
文件拥有者用户可以缩写成 u
所属组用户 g
其他用户 o
所有的用户(ALL) a
chmod 权限命令可直接操作用户,
例如:
chmod u+x (给所有者加执行权限)
chmod g-w (给所属组删去写权限)
chmod o+t (给其他用户加上stick权限)
总结