关于实用程序的基本问题。描述物品权限的 10 个符号代码开头的ls
字母b
和代表什么意思?c
据我所知,输入 时ls -l
,终端会提供目录中所有项目的列表。每个项目描述前面都有一个 10 个符号的代码。此代码说明项目类型是什么(第一个符号)以及用户、用户组和所有其他用户的项目权限是什么。
如果第一个符号是破折号
-
,则该项目是文件。如果第一个符号是字母
d
,则该项目是目录。如果第一个符号是字母
l
,则该项目是链接/快捷方式。
例如:
$ ls -l /home/phodor
total 68
drwxr-xr-x 5 phodor phodor 4096 Dec 20 12:02 Documents
drwxr-xr-x 9 phodor phodor 4096 Jan 17 12:02 Desktop
drwxr-xr-x 7 phodor phodor 4096 Jan 13 22:42 Downloads
-rw-r--r-- 1 phodor phodor 8980 Jun 27 2015 hello.txt
lrwxrwxrwx 1 phodor phodor 29 Jan 17 12:02 MyEBook -> /home/phodor/Documents/EBook.pdf
但是,一些 10 位代码也可以以某些项目开头b
或c
代表以下项目:
$ ls -l /dev
crw--w---- 1 root tty 4, 0 Jan 17 09:19 tty0
brw-rw---- 1 root disk 1, 0 Jan 17 09:19 ram0
brw-rw---- 1 root disk 8, 0 Jan 17 09:19 sda
b
和是什么c
意思?文件描述代码的第一个符号可以采用的值的完整列表是什么(-
,d
,l
,b
,c
...)?
答案1
从部分10.1.2 列出了哪些信息的GNU Coreutils 9.0 手册:
文件类型是下列字符之一:
‘-’ regular file ‘b’ block special file ‘c’ character special file ‘C’ high performance (“contiguous data”) file ‘d’ directory ‘D’ door (Solaris) ‘l’ symbolic link ‘M’ off-line (“migrated”) file (Cray DMF) ‘n’ network special file (HP-UX) ‘p’ FIFO (named pipe) ‘P’ port (Solaris) ‘s’ socket ‘?’ some other file type