当我 cd 到/
并输入命令时:
ls -ls
Run Code Online (Sandbox Code Playgroud)
对于某些文件/文件夹,它会提供类似的输出
0 lrwxrwxrwx. 1 root root 7 Jan 30 2018 bin -> usr/bin
Run Code Online (Sandbox Code Playgroud)
那么这究竟是lrwxrwxrwx
什么呢?
Zan*_*nna 19
前导l
表示此文件是symlink,相比之下,-
它表示常规文件,d
表示目录,以及其他不太常见的前缀。
符号链接是仅包含指向另一个文件的链接的文件类型。读取符号链接读取真实文件。写入符号链接会写入真实文件。cd
指向指向目录的符号链接会导致行为几乎与cd
进入真实目录时发生的情况相同。
该许可位显示为rwxrwxrwx
。所有符号链接都显示这些位,但它们是“虚拟权限”。符号链接的实际(或有效)权限是它链接到的真实文件的权限。您可以通过stat
在符号链接上运行来获得真正的权限(和文件类型),例如:
$ stat -Lc '%a %A' /initrd.img
644 -rw-r--r--
Run Code Online (Sandbox Code Playgroud)
stat
读取文件元数据-L
取消引用(跟随)符号链接-c
根据指定的字符串选择输出%a
八进制权限%A
“人类可读”权限