Linux命令之---ls

时间:2023-12-17 10:04:26

命令简介:

ls(list)命令用来列出目标目录(缺省的话为当前目录)中所有的子目录和文件。

指令所在路径:/bin/ls

执行权限:All User

命令语法:

ls [选项] [目录名]

命令参数:

参数
长参数
描叙

-a

-all

显示指定目录(缺省为当前目录)下所有文件,包括隐藏文件与目录

-A

--almost-all

不显示隐藏的文件。(显示除"."和".."外的所有文件)

--author

--author 需要与参数-l结合使用。显示文件的author

-b

--escape

print octal escapes for nongraphic characters(非显示字符进行转义打印);

把文件名中不可输出的字符用反斜杠加字符编号的形式输出

--block-size

查看文件的block大小。

K = Kilobyte

M

M = Megabyte

G

G = Gigabyte

T

T = Terabyte

P

P = Petabyte

E

E = Exabyte

Z

Z = Zettabyte

Y

Y = Yottabyte

-B

--ignore-backups

do not list implied entries ending with ~ 不显示以~结尾的文件。

-c

配合 -lt:根据 ctime排序及显示。 ctime (文件状态最后更改的时间)

-C

按列输出,纵向排序

--color

控制是否使用色彩分辨文件。WHEN 可以是'never'、'always'或'auto'其中之一

-d

--directory

显示目录信息,而不是目录下的文件信息

-D

--dired

输出适合 Emacs 的 dired 模式使用的结果

-f

对输出的文件不进行排序, -lst等选项会失效。

-F

--classify

附加文件类别,符号在文件名最后。/表明是一个目录;@表明是到其它文件的符号链接;* 表明是一个可执行文件。

--file-type

--format

--full-time

-g

类似参数-l,但是不列出所有者

-G

不列出任何有关组的信息

-h

人性化显示容量信息。表示”–human-readable”,单位是k或者M ,比较容易看清楚结果

--si

类似参数h,但是文件大小去1000,而不是1024

-H

列出符号链接指示的真正的目的地

--dereference-command-line-symlink-to-dir

--hide

-

--indicator-style

-i

列出文件或目录的索引节点号

-I

do not list implied entries matching shell PATTERN

-k

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

-l

使用长格式显示。显示详细信息,例如是文件还是目录,它的大小、修改日期和时间、文件或目录的名字以及文件的属主和它的权限

-L

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

-m

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

-n

以数字显示文件和目录的UID和GID

-N

此选项将不限制文件长度

-o

显示文件出组信息以外的详细信息。

-p

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

-q

该选项可以用?代替不可输出的字符

--indicator-style

-Q

该选项可以把输出的文件名用双引号括起来

--quoting-style=WORD

-r

倒序方式显示文件和目录

-R

递归显示子目录

-s

以块大小为单位列出所有文件的大小

-S

以文件大小排序

--sort=WORD

extension -X status -c

none -U time -t

size -S atime -u

time -t access -u

version -v use -u

--time=WORD

--time-style=STYLE

-t

以文件修改时间排序,默认按文件名排序。

-T

assume tab stops at each COLS instead of 8

-u

显示文件或目录最后被访问的时间。

-U

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

-v

根据版本进行排序

-w

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

-x

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

-X

根据扩展名排序

-1

每行只列一个文件

--help

显示此帮助信息

-version

显示版本信息

常用范例:

例一:列出/home/test文件夹下的所有文件和目录的详细资料

命令:ls -l -R /home/test

命令:ls -lR /home/test

例二:列出当前目录中所有以“t”开头的目录的详细内容

命令:ls -l t*

可以查看当前目录下文件名以“t”开头的所有文件的信息。其实,在命令格式中,方括号内的内容都是可以省略的,对于命令ls而言,如果省略命令参数和操作对象,直接输入“ ls ”,则将会列出当前工作目录的内容清单。

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

命令:

ls -l * |grep "^-"|wc -l ---文件个数

ls -l * |grep "^d"|wc -l    ---目录个数

例四: 在ls中列出文件的绝对路径

命令:ls | sed "s:^:`pwd`/:"

    [root@lking opt]# ls | sed "s:^:`pwd`/:" 

    /opt/log

    /opt/script

    /opt/soft

    /opt/src

    /opt/svndata

    /opt/web
例五:指定文件时间输出格式

命令:ls -ctl --time-style=long-iso

[root@king soft]# ls -ctl --time-style=long-iso
总计 350644
drwxr-xr-x 16 1016 1016 4096 2018-7-27 09:05 subversion-1.6.1