命令格式 ls [参数] [目录名] 参数 -1 每列仅显示一个文件或目录名称。 -a或--all 下所有文件和目录。 -A或--almost-all 显示所有文件和目录,但不显示现行目录和上层目录。 -b或--escape 显示脱离字符。 -B或--ignore-backups 忽略备份文件和目录。 -c 以更改时间排序,显示文件和目录。 -C 以又上至下,从左到右的直行方式显示文件和目录名称。 -d或--directory 显示目录名称而非其内容。 -D或--dired 用Emacs的模式产生文件和目录列表。 -f 此参数的效果和同时指定"aU"参数相同,并关闭"lst"参数的效果。 -F或--classify 在执行文件,目录,Socket,符号连接,管道名称后面,各自加上"*","/","=","@","|"号。 -g 次参数将忽略不予处理。 -G或--no-group 不显示群组名称。 -h或--human-readable 用"K","M","G"来显示文件和目录的大小。 -H或--si 此参数的效果和指定"-h"参数类似,但计算单位是1000Bytes而非1024Bytes。 -i或--inode 显示文件和目录的inode编号。 -I<范本样式>或--ignore=<范本样式> 不显示符合范本样式的文件或目录名称。 -k或--kilobytes 此参数的效果和指定"block-size=1024"参数相同。 -l 使用详细格式列表。 -L或--dereference 如遇到性质为符号连接的文件或目录,直接列出该连接所指向的原始文件或目录。 -m 用","号区隔每个文件和目录的名称。 -n或--numeric-uid-gid 以用户识别码和群组识别码替代其名称。 -N或--literal 直接列出文件和目录名称,包括控制字符。 -o 此参数的效果和指定"-l" 参数类似,但不列出群组名称或识别码。 -p或--file-type 此参数的效果和指定"-F"参数类似,但不会在执行文件名称后面加上"*"号。 -q或--hide-control-chars 用"?"号取代控制字符,列出文件和目录名称。 -Q或--quote-name 把文件和目录名称以""号标示起来。 -r或--reverse 反向排序。 -R或--recursive 递归处理,将指定目录下的所有文件及子目录一并处理。 -s或--size 显示文件和目录的大小,以区块为单位。 -S 用文件和目录的大小排序。 -t 用文件和目录的更改时间排序。 -T<跳格字符>或--tabsize=<跳格字数> 设置跳格字符所对应的空白字符数。 -u 以最后存取时间排序,显示文件和目录。 -U 列出文件和目录名称时不予排序。 -v 文件和目录的名称列表以版本进行排序。 -w<每列字符数>或--width=<每列字符数> 设置每列的最大字符数。 -x 以从左到右,由上至下的横列方式显示文件和目录名称。 -X 以文件和目录的最后一个扩展名排序。 --block-size=<区块大小> 指定存放文件的区块大小。 --color=<列表格式> 培植文件和目录的列表格式。 --full-time 列出完整的日期与时间。 --help 在线帮助。 --indicator-style=<标注样式> 在文件和目录等名称后面加上标注,易于辨识该名称所属的类型。 --quoting-syte=<引号样式> 把文件和目录名称以指定的引号样式标示起来。 --show-control-chars 在文件和目录列表时,使用控制字符。 --sort=<排序方式> 配置文件和目录列表的排序方式。 --time=<时间戳记> 用指定的时间戳记取代更改时间。 --version 显示版本信息。 用ls -l命令查看某一个目录会得到一个9个字段的列表. 第1行显示的信息: 总用量(total) — 这个数值是该目录下所有文件及目录列表第5个字段的和(以k为单位),也就是该目录的大小. 第1字段: 文件属性字段 文件属性字段总共有10个字母组成,第一个字母表示文件类型,如果这个字母是一个减号”-”,则说明该文件是一个普通文件.字母”d”表示该文件是一个目录,字母”d”,是dirtectory(目录)的缩写. 请注意,一个目录或者说一个文件夹是一个特殊文件,这个特殊文件存放的是其他文件和文件夹的相关信息. 第2字段:文件硬链接数或目录子目录数 第3字段:文件拥有者 第4字段:文件拥有者所在的组 第5字段:文件文件大小(以字节为单位) 第6字段:文件创建月份 第7字段:文件创建日期 第8字段:文件创建时间 第9字段:文件名 (如果是一个符号链接,那么会有一个 “->” 箭头符号,后面根一个它指向的文件) 范例 例一:列出/root/linuxeye文件夹下的所有文件和目录的详细资料 命令:ls -l -R /root/linuxeye 在使用 ls 命令时要注意命令的格式:在命令提示符后,首先是命令的关键字,接下来是命令参数,在命令参数之前要有一短横线“-”,所有的命令参数都有特定的作用,自己可以根据需要选用一个或者多个参数,在命令参数的后面是命令的操作对象。在以上这条命令“ ls -l -R /root/linuxeye”中,“ls” 是命令关键字,“-l -R”是参数,“ /root/linuxeye”是命令的操作对象。在这条命令中,使用到了两个参数,分别为“l”和“R”,当然,你也可以把他们放在一起使用,如下所示: 命令:ls -lR /root/linuxeye 这种形式和上面的命令形式执行的结果是完全一样的。另外,如果命令的操作对象位于当前目录中,可以直接对操作对象进行操作;如果不在当前目录则需要给出操作对象的完整路径,例如上面的例子中,我的在当前家(root)目录下,我想对家(root)目录下的linuxeye文件进行操作,我可以直接输入 ls -lR linuxeye,也可以绝对路径用 ls -lR /root/linuxeye。 例二:列出当前目录中所有以“D”开头的目录下的详细内容,可以使用如下命令: 命令:ls -l D* 可以查看当前目录下文件名以“D”开头的所有文件的信息。其实,在命令格式中,方括号内的内容都是可以省略的,对于命令ls而言,如果省略命令参数和操作对象,直接输入“ ls ”,则将会列出当前工作目录的内容清单。 例三:只列出当前目录下的子目录 # ls -F | grep /$ Django-1.5.1/ wd/ 列出当前目录下的子目录详细情况 # ls -l | grep "^d" drwxr-xr-x 9 www games 4096 Apr 15 21:11 Django-1.5.1 drwxr-xr-x 2 root root 4096 Jun 5 18:44 wd 例四:列出目前工作目录下所有名称是"D"开头的档案,越新的排愈后面,可以使用如下命令: # ls -ltr D* -rw-r--r-- 1 root root 8028963 Mar 29 04:37 Django-1.5.1.tar.gz Django-1.5.1: total 84 -rw-r--r-- 1 www games 1558 Jun 6 2012 LICENSE -rw-r--r-- 1 www games 1776 Jun 6 2012 README.rst -rw-r--r-- 1 www games 667 Jun 6 2012 INSTALL -rw-r--r-- 1 www games 112 Sep 10 2012 setup.cfg -rw-r--r-- 1 www games 1566 Mar 29 04:07 MANIFEST.in -rw-r--r-- 1 www games 21355 Mar 29 04:07 AUTHORS -rw-r--r-- 1 www games 5395 Mar 29 04:09 setup.py drwxr-xr-x 5 www games 4096 Mar 29 04:28 tests drwxr-xr-x 2 www games 4096 Mar 29 04:28 scripts drwxr-xr-x 2 www games 4096 Mar 29 04:28 extras drwxr-xr-x 13 www games 4096 Mar 29 04:28 docs -rw-r--r-- 1 www games 1229 Mar 29 04:28 PKG-INFO drwxr-xr-x 17 www games 4096 Apr 15 21:09 django drwxr-xr-x 4 root root 4096 Apr 15 21:09 build drwxr-xr-x 4 root root 4096 Apr 15 21:33 linuxeye 例五:列出目前工作目录下所有档案及目录;目录于名称后加"/", 可执行档于名称后加"*" # ls -AF account_info.tmp contact_list.txt_bak data.pkl fseek.py tmp.txt zidian.py account_info.txt contact_query2.py Django-1.5.1/ shop_list.py try_except.py account_info.txt_bk contact_query.py Django-1.5.1.tar.gz shops.txt typechk.py ATM.py c.py finput.py test.py* wd/ contact_list.txt credit_account.log f.py test.txt while.py* 例六:计算当前目录下的文件数和目录数 命令: # ls -l | grep "^-" | wc -l #文件个数 # ls -l | grep "^d" | wc -l #目录个数 例七: 在ls中列出文件的绝对路径 # ls | sed "s:^:`pwd`/:" /root/linuxeye/Django-1.5.1 /root/linuxeye/Django-1.5.1.tar.gz /root/linuxeye/finput.py /root/linuxeye/f.py /root/linuxeye/fseek.py /root/linuxeye/shop_list.py /root/linuxeye/shops.txt /root/linuxeye/test.py /root/linuxeye/test.txt /root/linuxeye/tmp.txt /root/linuxeye/try_except.py /root/linuxeye/typechk.py /root/linuxeye/wd /root/linuxeye/while.py /root/linuxeye/zidian.py 例九:列出当前目录下的所有文件(包括隐藏文件)的绝对路径, 对目录不做递归 # find $PWD -maxdepth 1 | xargs ls -ld drwxr-xr-x 9 www games 4096 Apr 15 21:11 /root/linuxeye/Django-1.5.1 -rw-r--r-- 1 root root 8028963 Mar 29 04:37 /root/linuxeye/Django-1.5.1.tar.gz -rw-r--r-- 1 root root 174 Apr 17 22:15 /root/linuxeye/finput.py -rw-r--r-- 1 root root 270 Apr 20 21:09 /root/linuxeye/f.py -rw-r--r-- 1 root root 122 Apr 17 22:56 /root/linuxeye/fseek.py -rw-r--r-- 1 root root 1291 Apr 22 22:46 /root/linuxeye/shop_list.py -rw-r--r-- 1 root root 67 Apr 22 21:06 /root/linuxeye/shops.txt -rwxr-xr-x 1 root root 212 May 6 11:34 /root/linuxeye/test.py -rw-r--r-- 1 root root 775 Apr 21 21:21 /root/linuxeye/test.txt -rw-r--r-- 1 root root 101 May 7 18:19 /root/linuxeye/tmp.txt -rw-r--r-- 1 root root 309 May 24 16:10 /root/linuxeye/try_except.py -rw-r--r-- 1 root root 337 Mar 22 16:15 /root/linuxeye/typechk.py drwxr-xr-x 2 root root 4096 Jun 5 18:44 /root/linuxeye/wd -rwxr-xr-x 1 root root 368 Apr 9 22:52 /root/linuxeye/while.py -rw-r--r-- 1 root root 328 May 7 14:29 /root/linuxeye/zidian.py 例十:递归列出当前目录下的所有文件(包括隐藏文件)的绝对路径 # find $PWD | xargs ls -ld 例十一:指定文件时间输出格式 drwxr-xr-x 9 www games 4096 2013-04-15 21:11:10.000000000 +0800 Django-1.5.1 -rw-r--r-- 1 root root 2017 2013-04-12 18:44:46.000000000 +0800 contact_query.py -rwxr-xr-x 1 root root 368 2013-04-09 22:52:27.000000000 +0800 while.py -rw-r--r-- 1 root root 8028963 2013-03-29 04:37:33.000000000 +0800 Django-1.5.1.tar.gz -rw-r--r-- 1 root root 337 2013-03-22 16:15:02.000000000 +0800 typechk.py 显示彩色目录列表 打开/etc/bashrc, 加入如下一行: alias ls="ls --color" 下次启动bash时就可以像在Slackware里那样显示彩色的目录列表了, 其中颜色的含义如下:
转载请保留固定链接: https://linuxeye.com/command/ls.html |