Linux中ls -l命令的解释?

时间:2014-07-17 19:20:52

标签: linux

我使用以下命令:

ls -l

结果,我得到了我当前所在文件夹中的文件名,以及上次访问的时间等。在左侧,有一串字符,有时还有破折号。我想知道是否有人可以为我提供每个角色代表什么的快速指南?

我可以假设第一个' d'代表目录,因为这是我的一个文件夹的名称。我假设' x'是可执行文件?不确定,有人可以为我分解吗?

这就是我所指的:

dr-xr-xr-x

感谢您的帮助。

4 个答案:

答案 0 :(得分:4)

来自man的{​​{1}}页:

  

读(r),写(w),执行(或访问目录)(x),          仅当文件是目录或已经执行permis时才执行          对于某些用户(X),在执行时设置用户或组ID,粘滞          (t),授予拥有该文件(u)的用户的权限          授予作为文件组成员的其他用户的权限          (g),以及授予用户的权限          前两个类别(o)。

含义

chmod

答案 1 :(得分:2)

从左到右,每三个字母一起是为每种用户指定的权限集。每个集合中有三种权限

r-read
w-write
x-execute

从左到右,每组都指定

的权限
 1) owner
 2) group
 3) others(other users)

分别在该文件上

因此,在您的情况下,目录具有对所有者,组和其他人的读取和执行权限(' - '指定不存在特定权限)。如果您对该文件/目录具有访问权限,则可以使用 chmod 命令更改权限。

答案 2 :(得分:1)

第一个字符是文件类型,通常您会看到d表示目录,-表示常规文件,或l表示链接。

接下来的九个字符代表文件的三种不同类型的权限:用户权限,组权限和其他权限。

第一个字符可以是r-,表示读取权限。

第二个字符可以是w-,表示写入权限。

最后一个字符可以是x-,也可以是多个不同的字符,具体取决于ls手册(如下)所述的文件特殊属性。

在这九个之后可能还有另一个字符,指定了特殊的访问权限,这些权限是ls(下面)的手册。

来自ls的手册

  

文件类型是以下字符之一:

     

` - '常规文件

     

`b'阻止特殊文件

     

`c'字符特殊文件

     

'C”         高性能(“连续数据”)文件

     

`d”         目录

     

`d”         门(Solaris 2.5及更高版本)

     

`L”         符号链接

     

`M”         离线(“迁移”)文件(Cray DMF)

     

`N”         网络特殊文件(HP-UX)

     

`P”         FIFO(命名管道)

     

`P”         端口(Solaris 10及更高版本)

     

`s'的         插座

     

`?”         其他一些文件类型

     

列出的文件模式位类似于符号模式   规格(*注意符号模式::)。但`ls'结合了多个   将位转换为每组权限的第三个字符,如下所示:

     

`s'的         如果set-user-ID或set-group-ID位对应         可执行位都已设置。

     

`S”         如果设置了set-user-ID或set-group-ID位,但是         相应的可执行位未设置。

     

`T”         如果限制删除标志或粘滞位,则         其他可执行位都已设置。限制删除         flag是粘滞位的另一个名称。 *笔记模式         结构::。

     

`T”         如果设置了受限删除标志或粘滞位但是         其他可执行位未设置。

     

`X”         如果设置了可执行位,则不适用。

     

' - ”         否则。

     

在文件模式位之后是指定的单个字符   是否有替代访问方法,如访问控制列表   适用于该文件。当字符跟随文件模式位时   是一个空间,没有替代访问方法。当它是一个   打印字符,然后有这样的方法。

     

GNU ls' uses a。'用于表示具有SELinux的文件的字符   安全上下文,但没有其他替代访问方法。

     

具有备用访问方法的任何其他组合的文件是   标有“+”字符。

答案 3 :(得分:0)

来自OpenBSD Manual Pages。请注意,也可以使用man ls在命令提示符中查看。 (对于未来类似的观察很方便,呃!)

长格式 如果给出-g,-l或-n选项,则会为每个文件显示以下信息:模式,链接数,所有者(但不是-g),组,大小(字节),上次修改时间( “mmm dd HH:MM”)和路径名。此外,对于显示其内容的每个目录,显示的第一行是目录中文件使用的总块数。除非被-k选项或BLOCKSIZE环境变量覆盖,否则块为512字节。


如果所有者或组名称分别不是已知用户名或组名,或者给出了-n选项,则会显示数字ID。


如果文件是字符特殊文件或块特殊文件,则文件的主要和次要设备编号将显示在大小字段中。


如果给出-T选项,则使用“mmm dd HH:MM:SS ccyy”格式显示上次修改的时间。


如果文件是符号链接,则链接到文件的路径名前面带有“ - >”。


在-g,-l或-n选项下打印的文件模式由条目类型,所有者权限,组权限和其他权限组成。条目类型字符描述文件类型,如下所示:

  • - 常规文件
  • b阻止特殊文件
  • c字符特殊文件
  • d目录
  • l symbolic link
  • p FIFO
  • s socket link

接下来的三个字段分别是三个字符:所有者权限,组权限和其他权限。每个字段有三个字符位置:

  • 如果是r,则文件可读; if - ,它不可读。
  • 如果是w,则文件是可写的; if - ,它不可写。

以下第一项适用: - S - 如果在所有者权限中,该文件不可执行,并且设置了set-user-ID模式。如果在组权限中,该文件不可执行且设置了set-group-ID模式。 - s - 如果在所有者权限中,该文件是可执行的并且设置了set-user-ID模式。如果在组权限中,该文件是可执行的并且设置了setgroup-ID模式。 - x - 文件是可执行的或目录是可搜索的。 - - 该文件既不可读,也不可写,不可执行,也不是set-user-ID,也不是set-group-ID,也不是粘性的(见下文)。


接下来的两个仅适用于最后一组中的第三个字符(其他权限):

  • T - 粘滞位已设置(模式1000),但既不可执行也不可搜索(请参阅chmod(1)或sticky(8))。
  • t - 粘滞位已设置(模式1000),可搜索或可执行(请参阅chmod(1)或sticky(8))。

此外,如果指定了-o选项,则文件标志(请参阅chflags(1))在文件大小前面显示为以逗号分隔的字符串,缩写如下:

  • - 没有标志
  • arch archived
  • nodump不要转储
  • sappnd system append-only
  • schg system immutable
  • uappnd user append-only
  • uchg user immutable