我正在编写一些代码来解释Linux中ls
命令的输出(以使它对新手更加友好)。作为测试之一,我执行了命令'ls -l /dev/tty',然后返回了下面的内容。
crw-rw-rw- 1 root root 5, 0 Apr 15 23:46 /dev/tty
第一列中的第一个字符 'c' 是什么意思?我知道 'd','l' 和 '-'。你能列出此字段的所有可能值吗?
这是一个基于字符(而非块)的设备文件。
块设备是指在数据传输方面需要以块为单位的设备,如磁盘等。
字符设备(同样不会让人惊讶)往往一次传输一个字符,例如终端、串口、打印机等。
如果您正在运行良好的Linux发行版,则可以使用以下命令获取更多信息(包括您可能永远用不到的信息):
info ls
以下是包含该小片段的内容:
文件类型可以是下列字符之一: - 普通文件 b 块设备文件 c 字符设备文件 C 高性能(“连续数据”)文件 d 目录 D 门(Solaris 2.5及以上版本) l 符号链接 M 离线(“迁移”)文件(Cray DMF) n 网络特殊文件(HP-UX) p FIFO(命名管道) P 端口(Solaris 10及以上版本) s 套接字 ? 其他某些文件类型
你列出的是字符设备,b代表块设备。