详解Linux ls命令的-l选项
ls命令的-l选项:以长格式显示文件的详细信息。输出的信息分为多列,它们依次是:文件类型与权限链接数文件主文件组文件大小建立或最近修改的时间文件名例如:例1:-rwxrwxr-x1ashleyashley435月918:43test1例2:lrwxrwxrwx1ashleyashley265月10 10:02abc -> /home/ashley/test/homework其中几个字段的含义
ls命令的-l选项:以长格式显示文件的详细信息。输出的信息分为多列,它们依次是:
文件类型与权限 链接数 文件主 文件组 文件大小 建立或最近修改的时间 文件名
例如:
例1:-rwxrwxr-x 1 ashley ashley 43 5月 9 18:43 test1
例2:lrwxrwxrwx 1 ashley ashley 26 5月 10 10:02 abc -> /home/ashley/test/homework
其中几个字段的含义说明如下:
①第一个字段中第1个字符表示文件类型,所用字符及其含义如下:
- -:普通文件。
- d:目录。
- b:块设备文件。
- c:字符设备文件。
- l:符号链接文件。
- s:套接字文件(socket)。
- p:命名管道文件(pipe)。
随后的9个字符表示文件的存储权限,其中前三个表示文件拥有者的权限,中间三个表示文件所属组用户拥有的权限,最后三个表示其他用户拥有的权限。各权限字符表示如下:
- r:读。
- w:写。
- x:执行。对于目录,表示可以访问该目录。
- s:当文件被执行时,把该文件的UID或GID赋予执行进程的UID(用户ID)或GID(组ID)。
- t:设置粘着标志位(留在内存,不被换出),若是目录,则在该目录中的文件只能被超级用户、文件主删除;若是可执行文件,则在该文件执行后,指向其正文段的指针仍留在内存。这样再次执行它时,系统能更快地装入该文件。
- -:表示没有设置权限。
在例1的第一个字段中,第一个字符“-”表示文件是普通文件,其后九个字符“rwxrwxr-x”表示文件拥有者ashley和文件所在组ashley中的用户对文件有读、写、执行权限,其他用户只有读和执行权限。
②第二个字段表示文件的链接数,准确来讲应该是硬链接数的个数,而不包括软链接数。
这一点可以通过实验来证实它只包括硬链接数:ln命令默认创建硬链接。如果想要创建软链接,可以通过ln命令加上-s选项来实现。
另外,如果一个文件没有额外的链接文件,那么其链接数为1。
③第三个字段表示文件主,也就是指创建这个文件的用户,这个比较容易理解。
④第四个字段表示文件组,一个用户可以加入很多个组,但是其中有一个是主组,就是显示在第四字段的名称。
⑤第五个字段表示的是文件大小,
对于普通文件:文件大小是文件的实际大小,以字节为单位;
对于符号链接文件:文件大小是其链接文件的路径名的字节数。
在例2中,文件类型为符号链接文件,链接文件的路径名“/home/ashley/test/homework”有26个字节,所以文件大小为26。
为了说明其大小确实不是等于目标文件大小的,此处贴一张图,可以看出目标文件的大小是为275字节的。
⑥第六个字段表示文件建立或最近修改的时间,这个字段也比较好理解,所以这里就不做过多解释。
⑦第七个字段表示文件名,
对于普通文件:该字段即为文件的名称;
对于符号链接文件:该字段显示的形式是符号链接文件名->目标文件的路径名。
以上为个人在学习linux时的一些收获,
部分来源于Linux教程(第5版)[孟庆昌],
也有部分参考这篇博客的内容。
更多推荐
所有评论(0)