ls命令选项详解

合集下载

Linux系统中ls命令用法与显示内容详解

Linux系统中ls命令用法与显示内容详解

Linux系统中ls命令⽤法与显⽰内容详解Category: , Author: admin, Popularity: 48%linux系统中ls命令的⽤法ls命令是linux下最常⽤的命令。

ls命令就是list的缩写,缺省下ls⽤来打印出当前⽬录的清单,如果ls指定其他⽬录,那么就会显⽰指定⽬录⾥的⽂件及⽂件夹清单。

通过ls 命令不仅可以查看linux⽂件夹包含的⽂件,⽽且可以查看⽂件权限(包括⽬录、⽂件夹、⽂件权限),查看⽬录信息等等,ls 命令在⽇常的linux操作中⽤的很多,在此给⼤家介绍⼀下ls 命令的使⽤⽅法。

⼀、ls命令使⽤介绍ls命令格式:ls [选项] [⽬录名]。

ls命令功能:列出⽬标⽬录中所有的⼦⽬录和⽂件。

ls 命令的参数选项说明:-a, –all 列出⽬录下的所有⽂件,包括以 . 开头的隐含⽂件。

-A, –almost-all 列出除了 . 及 .. 以外的任何项⽬–author 印出每个⽂件的作者-b, –escape 把⽂件名中不可输出的字符⽤反斜杠加字符编号的形式列出。

–block-size=⼤⼩块以指定<⼤⼩>的字节为单位-B, –ignore-backups 不列出任何以 ~ 字符结束的项⽬-c 输出⽂件的 ctime (⽂件状态最后更改的时间),并根据 ctime 排序。

-C 每栏由上⾄下列出项⽬–color[=WHEN] 控制是否使⽤⾊彩分辨⽂件。

WHEN 可以是‘never’、‘always’或‘auto’其中之⼀-d, –directory 将⽬录象⽂件⼀样显⽰,⽽不是显⽰其下的⽂件。

-D, –dired 产⽣适合 Emacs 的 dired 模式使⽤的结果-f 对输出的⽂件不进⾏排序,-aU 选项⽣效,-lst 选项失效-F, –classify 加上⽂件类型的指⽰符号 (*/=@| 其中⼀个)–format=关键字 across -x,commas -m,horizontal -x,long -l,single-column -1,verbose -l,vertical -C–full-time 即 -l –time-style=full-iso-g 类似 -l,但不列出所有者-G, –no-group 不列出任何有关组的信息-h, –human-readable 以容易理解的格式列出⽂件⼤⼩ (例如 1K 234M 2G)–si 类似 -h,但⽂件⼤⼩取 1000 的次⽅⽽不是 1024-H, –dereference-command-line 使⽤命令列中的符号链接指⽰的真正⽬的地–indicator-style=⽅式指定在每个项⽬名称后加上指⽰符号<⽅式>:none (默认),classify (-F),file-type (-p)-i, –inode 印出每个⽂件的 inode 号-I, –ignore=样式不印出任何符合 shell 万⽤字符<样式>的项⽬-k 即 –block-size=1K,以 k 字节的形式表⽰⽂件的⼤⼩。

linuxlsll命令参数及使用方法的详解

linuxlsll命令参数及使用方法的详解

linuxlsll命令参数及使⽤⽅法的详解⼀.ls命令列出制定⽂件下或当前⽬录⽤法:ls [选项]... [⽂件]...列出 FILE 的信息(默认为当前⽬录)。

如果不指定-cftuvSUX 或--sort 选项,则根据字母⼤⼩排序。

长选项必须使⽤的参数对于短选项时也是必需使⽤的。

-a, --all 不隐藏任何以. 开始的项⽬-A, --almost-all 列出除. 及.. 以外的任何项⽬--author 与-l 同时使⽤时列出每个⽂件的作者-b, --escape 以⼋进制溢出序列表⽰不可打印的字符--block-size=⼤⼩块以指定⼤⼩的字节为单位-B, --ignore-backups 不列出任何以"~"字符结束的项⽬-c 配合-lt:根据ctime 排序并显⽰ctime(⽂件状态最后更改的时间)配合-l:显⽰ctime 但根据名称排序其他情况:按ctime 排序-C 每栏由上⾄下列出项⽬--color[=WHEN] 控制是否使⽤⾊彩分辨⽂件。

WHEN 可以是"never"(默认)、"always"或"auto"其中之⼀-d, --directory 当遇到⽬录时列出⽬录本⾝⽽⾮⽬录内的⽂件-D, --dired 产⽣适合Emacs 的dired 模式使⽤的结果-f 不进⾏排序,-aU 选项⽣效,-lst 选项失效-F, --classify 加上⽂件类型的指⽰符号(*/=@| 其中⼀个)--format=关键字交错-x,逗号分隔-m,⽔平-x,长-l,单栏-1,详细-l,垂直-C--full-time 即-l --time-style=full-iso-g 类似-l,但不列出所有者--group-directories-first在⽂件前分组⽬录。

此选项可与--sort ⼀起使⽤,但是⼀旦使⽤--sort=none (-U)将禁⽤分组-G, --no-group 以⼀个长列表的形式,不输出组名-h, --human-readable 与-l ⼀起,以易于阅读的格式输出⽂件⼤⼩(例如 1K 234M 2G)--si 同上⾯类似,但是使⽤1000 为基底⽽⾮1024-H, --dereference-command-line跟随命令⾏列出的符号链接--dereference-command-line-symlink-to-dir跟随命令⾏列出的⽬录的符号链接--hide=PATTERN 隐藏符合PATTERN 模式的项⽬(-a 或 -A 将覆盖此选项)--indicator-style=⽅式指定在每个项⽬名称后加上指⽰符号⽅式:none (默认),classify (-F),file-type (-p)-i, --inode 显⽰每个⽂件的inode 号-I, --ignore=PATTERN 不显⽰任何符合指定shell PATTERN 的项⽬-k 即--block-size=1K-l 使⽤较长格式列出信息-L, --dereference 当显⽰符号链接的⽂件信息时,显⽰符号链接所指⽰的对象⽽并⾮符号链接本⾝的信息-m 所有项⽬以逗号分隔,并填满整⾏⾏宽-n, --numeric-uid-gid 类似 -l,但列出UID 及GID 号-N, --literal 输出未经处理的项⽬名称 (如不特别处理控制字符)-o 类似 -l,但不列出有关组的信息-p, --indicator-style=slash 对⽬录加上表⽰符号"/"-q, --hide-control-chars 以"?"字符代替⽆法打印的字符--show-control-chars 直接显⽰⽆法打印的字符 (这是默认⽅式,除⾮调⽤的程序名称是"ls"⽽且是在终端输出结果)-Q, --quote-name 将条⽬名称括上双引号--quoting-style=⽅式使⽤指定的quoting ⽅式显⽰条⽬的名称:literal、locale、shell、shell-always、c、escape-r, --reverse 排序时保留顺序-R, --recursive 递归显⽰⼦⽬录-s, --size 以块数形式显⽰每个⽂件分配的尺⼨-S 根据⽂件⼤⼩排序--sort=WORD 以下是可选⽤的WORD 和它们代表的相应选项:extension -X status -cnone -U time -tsize -S atime -utime -t access -uversion -v use -u--time=WORD 和-l 同时使⽤时显⽰WORD 所代表的时间⽽⾮修改时间:atime、access、use、ctime 或status;加上--sort=time 选项时会以指定时间作为排序关键字--time-style=STYLE 和-l 同时使⽤时根据STYLE 代表的格式显⽰时间:full-iso、iso、locale、posix-iso、+FORMAT。

linux中ls的用途

linux中ls的用途

linux中ls的用途ls命令是Linux操作系统中最常用的命令之一,用于列出和显示目录及文件的信息。

它可以显示目录下的文件、子目录,以及它们的权限、所有者、大小和日期等信息。

下面是关于ls命令的详细介绍。

1.列出目录及文件一般来说,使用ls命令不附加任何参数,可以列出当前目录下的所有文件和子目录。

例如:```ls```这会显示当前目录中的所有文件和子目录的名称。

2.列出所有文件,包括隐藏文件有时,我们需要列出所有文件,包括以.开头的隐藏文件。

这时可以使用ls命令的"-a"参数,例如:```ls -a```这会显示当前目录中的所有文件和子目录的名称,包括以.开头的隐藏文件。

3.显示目录中的文件和子目录详情如果要查看文件和子目录的更多详细信息,可以使用ls命令的"-l"参数,例如:```ls -l```这会显示当前目录中的所有文件和子目录的名称、权限、所有者、大小、创建日期等详细信息。

4.列出文件和子目录的大小如果我们只关心文件和子目录的大小,可以使用ls命令的"-s"参数,例如:```ls -s```这会显示当前目录中所有文件和子目录的名称和大小,以块的形式显示。

5.按照时间顺序列出文件有时,我们希望按照文件的修改时间顺序列出文件和子目录。

可以使用ls命令的"-t"参数,例如:```ls -t这会按照文件的修改时间顺序列出当前目录中的所有文件和子目录。

6.列出文件和子目录的权限要显示文件和子目录的权限,可以使用ls命令的"-l"参数,例如:```ls -l```这会显示当前目录中所有文件和子目录的名称和权限。

7.列出文件和子目录的所有者使用ls命令的"-l"参数可以显示文件和子目录的所有者,例如:```ls -l```这会显示当前目录中所有文件和子目录的名称和所有者。

8.列出文件和子目录的创建日期和时间要显示文件和子目录的创建日期和时间,可以使用ls命令的"-l"参数,例如:```ls -l这会显示当前目录中所有文件和子目录的名称和创建日期和时间。

Linux系统中ls命令详解

Linux系统中ls命令详解

Linux系统中ls命令用法详解ls命令是linux下最常用的命令。

ls命令就是list的缩写,缺省下ls用来打印出当前目录的清单,如果ls指定其他目录,那么就会显示指定目录里的文件及文件夹清单。

通过ls 命令不仅可以查看linux文件夹包含的文件,而且可以查看文件权限(包括目录、文件夹、文件权限),查看目录信息等等,ls 命令在日常的linux操作中用的很多,在此给大家介绍一下ls 命令的使用方法。

一、ls命令使用介绍ls命令格式:ls [选项] [目录名].ls命令功能:列出目标目录中所有的子目录和文件。

ls 命令的参数选项说明:-a, –all 列出目录下的所有文件,包括以 . 开头的隐含文件。

-A, –almost-all 列出除了 . 及以外的任何项目–author 印出每个文件的作者-b, –escape 把文件名中不可输出的字符用反斜杠加字符编号的形式列出。

–block-size=大小块以指定<大小>的字节为单位-B, –ignore-backups 不列出任何以~ 字符结束的项目-c 输出文件的ctime (文件状态最后更改的时间),并根据ctime 排序。

-C 每栏由上至下列出项目–color[=WHEN] 控制是否使用色彩分辨文件。

WHEN 可以是'never'、'always'或'auto'其中之一-d, –directory 将目录象文件一样显示,而不是显示其下的文件。

-D, –dired 产生适合Emacs 的dired 模式使用的结果-f 对输出的文件不进行排序,-aU 选项生效,-lst 选项失效-F, –classify 加上文件类型的指示符号(*/=@| 其中一个)–format=关键字across -x,commas -m,horizontal -x,long -l,single-column -1,verbose -l,vertical -C–full-time 即-l –time-style=full-iso-g 类似-l,但不列出所有者-G, –no-group 不列出任何有关组的信息-h, –human-readable 以容易理解的格式列出文件大小(例如1K 234M 2G)–si 类似-h,但文件大小取1000 的次方而不是1024-H, –dereference-command-line 使用命令列中的符号链接指示的真正目的地–indicator-style=方式指定在每个项目名称后加上指示符号<方式>:none (默认),classify (-F),file-type (-p)-i, –inode 印出每个文件的inode 号-I, –ignore=样式不印出任何符合shell 万用字符<样式>的项目-k 即–block-size=1K,以k 字节的形式表示文件的大小。

linux ls命令的用法

linux ls命令的用法

linux ls命令的用法LS(List)命令是Linux操作系统中最基本和最常用的命令之一,用于列出指定目录下的文件和子目录。

它可以帮助用户快速查看目录中的文件列表,并提供一些附加选项以满足用户的不同需求。

本文将详细介绍LS命令的用法,包括常用选项和参数,以及一些实用的技巧和案例。

一、基本用法1. 使用ls命令最简单的方式是在命令行中输入“ls”后回车,此时将会列出当前目录中的文件和子目录。

2. 如果需要查看指定目录下的文件列表,可以在ls命令后面添加目录路径来实现。

例如,“ls /home”将会列出家目录下的文件和子目录。

3. 若想查看隐藏文件(以点开头的文件),可以使用“ls -a”命令。

例如,“ls -a /home”将包括所有文件和子目录,包括隐藏文件。

二、常用选项1. -l:使用长格式(long format)输出,将会显示文件的详细信息,包括权限、所有者、文件大小、修改日期等。

2. -t:按照修改时间倒序排列文件。

使用“ls -lt”命令将根据最后修改时间将文件列表显示在最前面。

3. -r:以相反的顺序显示文件。

使用“ls -r”命令可以实现将文件从最后一个显示到第一个。

4. -S:根据文件大小(以字节为单位)进行排序,最大的文件将会显示在最前面。

使用“ls -S”命令可以实现这一功能。

5. -h:以人类可读的文件大小格式显示,即以具有单位的形式进行显示(如1K、10M等)。

使用“ls -lh”命令可以实现这一功能。

6. -d:列出目录本身,而不是目录下的内容。

使用“ls -d”命令可以只显示目录的信息。

7. color=auto:自动根据文件类型显示不同的颜色。

默认情况下是关闭的,可以通过将其加入到ls命令后开启。

(注:颜色显示需要终端支持)三、常用参数1. -R:递归列出指定目录下的所有子目录和文件。

使用“ls -R”命令可以列出目录树中的所有文件和子目录。

2. -a:显示所有文件和子目录,包括以点开头的隐藏文件。

ls限制条数

ls限制条数

ls限制条数ls命令是Unix和类Unix操作系统中常用的命令之一,用于列出指定目录下的文件和文件夹。

它可以通过一些选项来限制显示的条数,以便更灵活地查看文件目录中的内容。

本文将详细介绍ls命令的限制条数选项,然后我将继续探讨ls命令的其他用法和相关注意事项。

1. ls命令的限制条数选项ls命令的限制条数选项主要有两个:-l和-a。

-l:使用详细列表模式显示文件和文件夹的详细信息。

在该模式下,每个条目将包含文件类型、权限、所有者、组、大小、时间戳等信息。

如果目录中文件较多,可以使用-p选项,以使其在屏幕宽度范围内垂直显示。

-a:显示目录下的所有文件和文件夹,包括以.开头的隐藏文件。

使用该选项可以查看目录中所有文件的完整列表,包括隐藏文件。

这两个选项可以组合使用,例如使用“ls -la”命令将以详细列表模式显示目录下的所有文件和文件夹,包括隐藏文件。

2. ls命令的其他用法除了限制条数选项外,ls命令还可以通过其他选项和参数来限制和过滤文件的显示。

-d:使用该选项可以仅显示目录本身,而不是其中的内容。

这对于查看目录属性很有用。

-m:以逗号分隔文件名显示,而不是垂直列出。

-R:递归显示目录下的所有文件和文件夹,包括子目录。

这对于查看目录结构非常有用。

-t:按照修改时间进行排序,并以最近修改的文件显示在前面。

-S:按照文件大小进行排序,并以最大文件显示在前面。

-i:显示文件和文件夹的索引号。

3.注意事项在使用ls命令时,需要注意以下几点:-如果指定的目录不存在,则会显示错误信息。

在使用相对目录路径时,需要确保当前工作目录是正确的。

-当目录中的文件数量很大时,输出可能会超出终端的显示范围,导致部分文件无法看到。

可以使用管道功能(|)或重定向(>)将输出写入文件或其他命令中。

-使用不同的选项可以得到不同的显示效果,根据自己的需求选择合适的选项。

4.总结ls命令是Unix和类Unix操作系统中用于列出目录下文件和文件夹的常用命令。

ls命令详解

ls命令详解
drwxr-xr-x 108 root root 12288 04-20 12:36 /etc
[1].13 查看文件或目录的inode节点,-i参数的运用;
查看文件或目录的节点,我们要用到i参数。如果节点相同,能确认他们是相同的文件,是通过通过ln 创建的硬链接文件;链接接有何用?如果您想把一个文件复制时保持原文件或目录的节点、大小、权限以及访问(或修改)时间都和原文件一致的文件。必须通过硬链接来实现,用cp命令是不可能实现的。
第一段文件种类及权限,也就是类似这样的-rw-r--r-- ,我们在前面讲到,如果在这段中,第一字符表示文件的类型,如果出现-,表示普通文件。如果是d开头的就是目录。在这个例子中,123.txt是普通文件,而mkuml-2004.07.17就是一个目录。关于文件的种类,请参考 :
rw-r--r--是权限位,我们在以后的教程中会讲到。
参数:
-a 显示所有文件,包含隐藏文件;包括“.“和“..“
-A 显示所有文件,包含隐藏文件,不包括“.“和“..“目录;
-B 不列出文件名以~结尾的文件;
-C 按列列出文件;
-d 仅可以查看目录的属性参数及信息;
-F 这个参数加上后,能给目录添加上/,给可执行文件加上*,给符号链接加上@ 等等,来标记文件名,目的是让用户方便查看;
-rw-r--r-- 1 root root 21 04-19 15:06 123.txt
-rw-r--r-- 1 root root 2 03-27 02:00 fonts.scale
-rw-r--r-- 1 root root 0 04-19 14:10 plinux.txt
lrwxrwxrwx 1 root root 33 04-19 11:27 kernel.rpm -> kernel-2.6.15-1.2025_FC5.i686.rpm

ls命令详解

ls命令详解

ls命令详解1、ls基本语法及选项⽤法:ls [选项]... [⽂件]...List information about the FILEs (the current directory by default).Sort entries alphabetically if none of -cftuvSUX nor --sort is specified.长选项必须使⽤的参数对于短选项时也是必需使⽤的。

-a, --all 不隐藏任何以. 开始的项⽬-A, --almost-all 列出除. 及.. 以外的任何项⽬--author 与-l 同时使⽤时列出每个⽂件的作者-b, --escape 以⼋进制溢出序列表⽰不可打印的字符--block-size=SIZE scale sizes by SIZE before printing them. E.g.,`--block-size=M' prints sizes in units of1,048,576 bytes. See SIZE format below.-B, --ignore-backups do not list implied entries ending with ~-c with -lt: sort by, and show, ctime (time of lastmodification of file status information)with -l: show ctime and sort by nameotherwise: sort by ctime, newest first-C 每栏由上⾄下列出项⽬--color[=WHEN] 控制是否使⽤⾊彩分辨⽂件。

WHEN 可以是"never"(默认)、"always"或"auto"其中之⼀-d, --directory 当遇到⽬录时列出⽬录本⾝⽽⾮⽬录内的⽂件-D, --dired 产⽣适合Emacs 的dired 模式使⽤的结果-f 不进⾏排序,-aU 选项⽣效,-lst 选项失效-F, --classify 加上⽂件类型的指⽰符号(*/=@| 其中⼀个)--format=关键字交错-x,逗号分隔-m,⽔平-x,长-l,单栏-1,详细-l,垂直-C--full-time 即-l --time-style=full-iso-g 类似-l,但不列出所有者--group-directories-first在⽂件前分组⽬录。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

ls命令选项详解ls 命令可以说是Linux下最常用的命令之一。

它有众多的选项,其中有很多是很有用的,你是否熟悉呢?下面列出了 ls 命令的绝大多数选项。

-a 列出目录下的所有文件,包括以 . 开头的隐含文件。

-b 把文件名中不可输出的字符用反斜杠加字符编号(就象在C语言里一样)的形式列出。

-c 输出文件的 i 节点的修改时间,并以此排序。

-d 将目录象文件一样显示,而不是显示其下的文件。

-e 输出时间的全部信息,而不是输出简略信息。

-f -U 对输出的文件不排序。

-g 无用。

-i 输出文件的 i 节点的索引信息。

-k 以 k 字节的形式表示文件的大小。

-l 列出文件的详细信息。

-m 横向输出文件名,并以“,”作分格符。

-n 用数字的 UID,GID 代替名称。

-o 显示文件的除组信息外的详细信息。

-p -F 在每个文件名后附上一个字符以说明该文件的类型,“*”表示可执行的普通文件;“/”表示目录;“@”表示符号链接;“|”表示FIFOs;“=”表示套接字(sockets)。

-q 用?代替不可输出的字符。

-r 对目录反向排序。

-s 在每个文件名后输出该文件的大小。

-t 以时间排序。

-u 以文件上次被访问的时间排序。

-x 按列输出,横向排序。

-A 显示除“.”和“..”外的所有文件。

-B 不输出以“~”结尾的备份文件。

-C 按列输出,纵向排序。

-G 输出文件的组的信息。

-L 列出链接文件名而不是链接到的文件。

-N 不限制文件长度。

-Q 把输出的文件名用双引号括起来。

-R 列出所有子目录下的文件。

-S 以文件大小排序。

-X 以文件的扩展名(最后一个 . 后的字符)排序。

-1 一行只输出一个文件。

--color=no 不显示彩色文件名--help 在标准输出上显示帮助信息。

--version 在标准输出上输出版本信息并退出。

Linux ls命令 -l 列表信息详解我们平时用ls -l 命令查看一个目录下的文件和子目录的详悉信息时,会得到一个详细的文件和目录名列表.这个列表包含了文件的属性,所属用户,所属组,创建时间,文件大小等等信息.这些信息到底是什么意思呢?有很多初学者对这些不太了解,因此想详悉讲解一下用ls -l命令得到的文件列表每一个字段的意思以笔者电脑的/root目录为例: [root@gucuiwen root]# ll总用量 4055-rw-r--r-- 1 root root 1581 11月 24 18:14 anaconda-ks.cfg drwxr-xr-x 2 root root 208 12月 1 13:50 babylinuxlrwxrwxrwx 1 root root 9 1月 4 11:06 disk1.link.png -> disk1.png -rwxr-xr-x 1 root root 13695 11月 30 16:51 fangkuai.sh drwxr-xr-x 2 root root 208 12月 28 12:06 FreeBSD -rw-r--r-- 1 root root 2315 11月 25 17:19 getMBR.png brw-r----- 1 root root 3, 1 1月 4 11:06 hda1 drwxr-xr-x 2 root root 296 12月 31 11:53 htmls-rw-r--r-- 1 root root 21369 11月 24 18:12 install.log -rw-r--r-- 1 root root 0 12月 18 10:44 tset crw-r----- 1 root root 4, 65 1月 4 11:08 ttyS1 -rw-r--r-- 1 root root 9754 12月 1 11:25 X.sxw-rw-r--r-- 1 root root 8704 11月 29 12:22 员工信息.xls 可以看到,用ls -l命令查看某一个目录会得到一个9个字段的列表. ####################### 第1行:总用量(total) #######################这个数值是该目录下所有文件及目录列表第5个字段的和(以k为单位),也就是该目录的大小.请注意和该目录下的文件和子目录下文件的总合做区分.这个数字和du /root 得到的数字的大小是不一样的.可以用awk命令来验证. 用awk累加第5字段得到的数值:[root@gucuiwen root]# ls -l |awk 'BEGIN{sum=0}{sum+=$5}END{print sum}' 4104092转化成以K为单位:[root@gucuiwen root]# ls -l |awk 'BEGIN{sum=0}{sum+=$5}END{print sum/1024}' 4007.9用ls -l得到的数值: 总用量 4055用du -sh /root得到的数值:[root@gucuiwen root]# du -sh /root 127M /root可以看到累加第5个字段得到的值和total显示的是一样的(因为具体算法的不同,略微有差别).得到的数值实际上是root目录的大小(把root目录看成是一个特殊的文件,就可以理解什么是目录的大小).而用du得到的数值是root目录下所由文件和子目录下全部文件的大小的总合.######################## 第1字段: 文件属性字段########################文件属性字段总共有10个字母组成,第一个字母表示文件类型,如果这个字母是一个减号"-",则说明该文件是一个普通文件.字母"d"表示该文件是一个目录,字母"d",是dirtectory(目录)的缩写.请注意,一个目录或者说一个文件夹是一个特殊文件,这个特殊文件存放的是其他文件和文件夹的相关信息.如果该字母是"l",表示该文件是一个符号链接.符号链接的概念类似于windows里的快捷方式.字母"l"是link(链接)的缩写.在UNIX类系统中,一个文件可以有多个文件名,一个文件的多个文件名之间互称为硬链接(hard link).这些文件头可以指向同一个文件,删除其中一个文件名并不能删除该文件,只有把指向该文件的所有硬链接都删除,这个文件所占用的空间才真正被释放,该文件才真正被删除.这和windows是有很大区别的,windows中不允许一个文件有两个以上文件名,如果存在这中情况,则被认为是文件系统错误.如果你以前在windows下玩过DEBUG就知道,可以用DEBUG修改一张软盘上的根目录,使一个文件同时具有两个文件名.但是修改好后用 scandisk监测的时候会被认为是交叉链接错误.开头为b的表示块设备文件(block),,设备文件是普通文件和程序访问硬件设备的入口,是很特殊的文件.它的没有文件大小,只有一个主设备号和一个辅设备号.上面的hda1就是一个设备文件,具有主设备号3和辅设备号1.表示第一个硬盘第一个分区.另外,如果第一个字母为c表示该文件是一个字符设备文件(character),一次传输一个字节的设备被称为字符设备,比如键盘,字符终端等,传输数据的最小单位为一个字节.一次传输数据为一整块的被称为块设备,比如硬盘,光盘等.最小数据传输单位为一个数据块(通常一个数据块的大小是512字节).第一字段的后面9个字母表示文件的权限. r表是读 (Read) w表示写 (Write) x表示执行 (eXecute)其中前三个表示文件属主的权限,中间三个表示组用户权限,最后三个表示其他用户权限. 比如:-rw-r--r-- 1 root root 1581 11月 24 18:14 anaconda-ks.cfg表示文件的拥有者root对文件有读写权限,其他人(同组用户和其他用户只有读的权限) 另外,权限组还有一些特殊的表示法.比如/usr/X11R6/bin/XFree86具有如下权限: [root@gucuiwen root]# ll /usr/X11R6/bin/XFree86-rws--x--x 1 root root 1960262 2003-02-28 /usr/X11R6/bin/XFree86其中的s表示这个是网络接口程序"s"是socket的缩写.该程序在运行过程中会打开一个网络接口.其他UNIX类系统如FreeBSD中还有t权限,表示一个临时(temporary)文件在freeBSD中用ls -l /tmp 可以看到这样的权限: drwxrwxrwt它的最后一位是字母"t"############################### 第2字段文件硬链接数或目录子目录数 ###############################如果一个文件不是目录那么这一字段表示,这个文件所具有的硬链接数,即这个文件总共有多少个文件名.查看第一个文件:-rw-r--r-- 1 root root 1581 11月 24 18:14 anaconda-ks.cfg第2字段的值为1,说明这个文件只有anaconda-ks.cfg这一个文件名.即只有一个指向该链接的硬链接.如果我用ln,做一个指向该文件的硬链接再查看该文件,该文件的第2字段就会变成2: [root@gucuiwen root]# ln anaconda-ks.cfg anaconda-ks.cfg.hardlink [root@gucuiwen root]# ls -l 总用量 4071-rw-r--r-- 2 root root 1581 11月 24 18:14 anaconda-ks.cfg-rw-r--r-- 2 root root 1581 11月 24 18:14 anaconda-ks.cfg.hardlink此时,anaconda-ks.cfg 和anaconda-ks.cfg.hardlink 称为互为硬链接.他们指向同一个文件,无论是修改哪一个文件,另一个里也做相应的变化,因为实际上他们指向同一个文件. 用ls -i anaconda-ks.cfg可以查看它的文件节点(inode) 互为硬链接的文件具有相同的文件节点. 以下是验证实验: [root@gucuiwen root]# ls -i anaconda-ks.cfg 18102 anaconda-ks.cfg [root@gucuiwen root]# ls -i anaconda-ks.cfg.hardlink 18102 anaconda-ks.cfg.hardlink可以看到,这两个文件具有相同的文件节点号:18102如果你知道一个文件有多个文件名,如何查找他的其他文件名分布在什么地方呢?可以先用ls -i 获得它的节点号,然后用find查找,如/etc/sysconfig/networking/devices/ifcfg-eth0就具有多个文件名,我要查找与它互为硬链接的文件:[root@gucuiwen devices]# ls -i /etc/sysconfig/networking/devices/ifcfg-eth0 147181 /etc/syscon fig/networking/devices/ifcfg-eth0 得到它的节点号为 147181 再用find查找:[root@gucuiwen devices]# find /etc -inum 147181 /etc/sysconfig/networking/devices/ifcfg-eth0/etc/sysconfig/networking/profiles/default/ifcfg-eth0 这样就得到了同一个文件的不同文件名的位置. ************************************* 如果是一个目录,第2字段的含义: **************************************如果是一个目录,则第2字段表示该目录所含子目录的个数.新建一个空目录,这个目录的第二字段就是2,表示该目录下有两个子目录.为什么新建的目录下面会有两个子目录呢?因为每一个目录都有一个指向它本身的子目录"." 和指向它上级目录的子目录"..",这两个默认子目录是隐藏的.用ls -a可以看到.每次在目录下新建一个子目录,该目录第2字段的值就增1,但是新建一个普通文件该字段值不增加.############################### 第3字段: 文件拥有者###############################该字段表示这个文件是属于哪个用户的.UNIX类系统都是多用户系统,每个文件都有它的拥有者.只有文件的拥有者才具有改动文件属性的权利.当然, root用户具有改动任何文件属性的权利.对于一个目录来说,只有拥有该目录的用户,或者具有写权限的用户才有在目录下创建文件的权利.如果某一个用户因为某种原因,被删除,而该用户的文件还存在,那么用ls -l 查看该文件将显示一个代表用户存在前ID号的数字. 以下是演示:先创建一个用户并用su过去:[root@gucuiwen root]# useradd gucuiwen -g users [root@gucuiwen root]# su - gucuiwen 用新建的用户创建一个测试文件:[gucuiwen@gucuiwen gucuiwen]$ touch testfile [gucuiwen@gucuiwen gucuiwen]$ ls -l testfile -rw-r--r-- 1 gucuiwen users 0 1月 4 16:31 testfile 最后用ls -l 看到第三字段的文件拥有者为gucuiwen 然后我将gucuiwen用户删除:[root@gucuiwen root]# userdel gucuiwen [root@gucuiwen root]# cd /home/gucuiwen/ [root@ gucuiwen gucuiwen]# ls -l 总用量 0-rw-r--r-- 1 501 users 0 1月 4 16:31 testfile可以看到,第三字段成了一个数字,这个数字是原gucuiwen用户的ID号.因为文件系统对每个文件记录文件所有者的ID,而非用户名. ############################### 第4字段:文件拥有者所在的组###############################组的概念可以想像成是一个共同完成一个项目的团队.通过组的概念,可以控制文件让特定的用户查看,修改或运行.而不是一棍子打死,要么全不让看,要么全让看.一个用户可以加入很多个组,但是其中有一个是主组,就是显示在第4字段的明称. 可以在adduser的时候用-g指定该用户所在的主组,用-G指定其他组. ############################### 第5字段:文件文件大小(以字节为单位) ###############################第5字段表示文件大小,如果是一个文件夹,则表示该文件夹的大小.请注意是文件夹本身的大小,而不是文件夹以及它下面的文件的总大小!很多人不能理解文件夹是一个特殊的文件的含义,这样的话理解文件夹大小的含义就比较困难了.###############################第6字段: 文件创建月份############################### 这个不必多说了.############################### 第7字段: 文件创建日期############################### ############################### 第8字段: 文件创建时间###############################文件创建的时间可以通过touch命令来修改.如: #touch testfile可以把testfile的创建时间修改为当前时间. touch的详细用法请看链接文档. #man touch 另外,一个文件还有最后访问时间,最后修改时间等属性. 这些属性可以用ls 的其它参数显示出来. ############################### 第9字段: 文件名###############################如果是一个符号链接,那么会有一个 "->" 箭头符号,后面根一个它指向的文件名.。

相关文档
最新文档