语法:ls   [选项]   目录路径

参数说明:

短选项

长选项

含义

-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=关键字

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

-l

使用较长格式列出信息

-L

--dereference

当显示符号链接的文件信息时,显示符号链接所指示的对象而并非符号链接本身的信息

-m

所有项目以逗号分隔,并填满整行行宽

-n

--numeric-uid-gid

类似 -l,但列出 UID 及 GID 号

-N

--literal

输出未经处理的项目名称(如不特别处理控制字符)

-o

类似-l,但不列出有关组的信息

-p

--file-type

加上文件类型的指示符号 (/=@| 其中一个)

-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   -c
none      -U       time     -t
size      -S       atime    -u
time      -t       access   -u
version   -v       use      -u
-t

以时间排序

-T

--tabsize=COLS

指定制表符(Tab)的宽度。缺省为8。

-u

同-lt 一起使用:按照访问时间排序并显示

同-l一起使用:显示访问时间并按文件名排序

其他:按照访问时间排序

-U

不进行排序;依文件系统原有的次序列出项目

-v

根据版本进行排序

-w

--width=COLS

自行指定萤幕宽度而不使用目前的数值

-x

逐行列出项目而不是逐栏列出

-X

根据扩展名排序

-1

每行只列出一个文件

可以是以下的单位 (单位前可加上整数):kB=1000,K=1024,MB=1000000,M=1048576,还有 G、T、P、E、Z、Y 如此类推。

默认是不会使用色彩来区别文件的。此方式等於使用了 --color=none 选项。若使用--color 选项但不指定 WHEN 参数等於 --color=always。当使用 --color=auto 时,只当输出至终端机画面 (tty) 时才会显示色彩。

若ls没有颜色显示,你可编辑/etc/bashrc 或目录下的 .bashrc ,加入下列指令:alias ls='ls -F -N --color=auto'   或  alias ls="ls --color" 要立即生效的話,則執行下列命令:source /etc/bashrc  或 source .bashrc

只列出子目录

ls -F | grep /$

ls -l | grep "^d"

计算当前目录下的文件数和目录数

ls -l * |grep "^-"|wc -l ---- to count files

ls -l * |grep "^d"|wc -l ----- to count dir

linux文件属性详解

Linux 文件或目录的属性主要包括:文件或目录的节点、种类、权限模式、链接数量、所归属的用户和用户组、最近访问或修改的时间等内容。[[email protected] test]# ls -lih

总计 316K

2095120 lrwxrwxrwx 1 root root 11 11-22 06:58 linklog.log -> log2012.log

2095112 -rw-r--r-- 1 root root 296K 11-13 06:03 log2012.log

2095110 -rw-r--r-- 1 root root 61 11-13 06:03 log2013.log

2095107 -rw-r--r-- 1 root root 0 11-13 06:03 log2014.log

2095117 -rw-r--r-- 1 root root 0 11-13 06:06 log2015.log

第一列:inode 译成中文就是索引节点。每个存储设备或存储设备的分区(存储设备是硬盘、软盘、U盘等等)被格式化为文件系统后,应该有两部份,一部份是inode,另一部份是Block,Block是用来存储数据用的。而inode呢,就是用来存储这些数 据的信息,这些信息包括文件大小、属主、归属的用户组、读写权限等。inode为每个文件进行信息索引,所以就有了inode的数值。操作系统根据指令, 能通过inode值最快的找到相对应的文件。

第二列:文件种类和权限;

第三列:硬链接个数;

第四列:属主;

第五列:所归属的组;

第六列:文件或目录的大小;

第七列和第八列:最后访问或修改时间;

第九列:文件名或目录名

以log2012.log为例:

2095112 -rw-r--r-- 1 root root 296K 11-13 06:03 log2012.log

inode 的值是:2095112

文件类型:文件类型是-,表示这是一个普通文件; 关于文件的类型,请参考:每天一个linux命令(24):Linux文件类型与扩展名

文件权限:文件权限是rw-r--r-- ,表示文件属主可读、可写、不可执行,文件所归属的用户组不可写,可读,不可执行,其它用户不可写,可读,不可执行;

硬链接个数: log2012.log这个文件没有硬链接;因为数值是1,就是他本身;

文件属主:也就是这个文件归哪于哪个用户 ,它归于root,也就是第一个root;

文件属组:也就是说,对于这个文件,它归属于哪个用户组,在这里是root用户组;

文件大小:文件大小是296k个字节;

访问可修改时间 :这里的时间是最后访问的时间,最后访问和文件被修改或创建的时间,有时并不是一致的;

实例

-l 选项

显示文件的形态、权限、拥有者、文件大小、最后修改时间、文件的完整名称(文件名+扩展名)。显示格式是每一行显示一个文件或者目录。

linux system 打印_文件大小

上面显示的是当前目录下的内容,如果显示某个深层子目录中的内容,同样可以。例如,当前工作目录为/home/shirdrn/temp,想要显示/home/shirdrn/temp/c下的内容,

linux system 打印_子目录_02

-R 选项

与-l相似,只是不显示出文件的所有者。

linux system 打印_linux system 打印_03

-t 选项

按照时间顺序列出文件及其目录。

linux system 打印_linux system 打印_04

-a 选项

显示指定目录下所有的文件以及目录,同时也列出所有以“.”开头的隐藏文件。

linux system 打印_文件类型_05

-A 选项

与-a很相似,显示指定目录下所有的文件以及目录,但是并不列出所有以“.”开头的隐藏文件。

linux system 打印_linux system 打印_06

-c 选项

文件及其目录是以英文字母序列出,文件在前,目录在后。

linux system 打印_子目录_07

-r 选项

正常情况下(使用-c选项)文件是以英文字母序列出,使用-r选项后,以英文字母反序显示。

linux system 打印_文件类型_08

-R 选项

如果列出的目录中仍有子目录或者文件,将所有目录下面的文件都显示出来。

linux system 打印_文件类型_09

-si 选项

显示指定目录中文件以及目录的名称,包括他们的大小。

linux system 打印_文件大小_10

-s 选项

按照文件及其目录的大小只显示文件以及目录名称。

linux system 打印_linux system 打印_11

-q 和-Q 选项

-q按照正常显示,只显示文件以及目录名称,-Q为每个文件以及目录的名称加上双引号。

linux system 打印_文件类型_12

-p 选项

对于目录,则显示格式形如“mydir/”的形式。

linux system 打印_文件类型_13

选项组合

可以使用各个选项的组合,得到更加适合自己需要的选项。

选项组合有两种格式,例如下面两种组合执行后是一样的:

ls -l -p

ls -lp

linux system 打印_linux打印所有文件名_14

ll 是ls -l的别名

ll -t 是降序, ll -t | tac 是升序