首页 > 代码库 > ls 命令总结

ls 命令总结

1.1  ls—list directory contents(显示目录内容)

【语法】:ls【选项】【参数】

【功能介绍】

ls指令用来显示目录列表,在Linux系统中有着较高的使用率。ls指令的输出信息可以进行颜色加亮显示,以区分不同类型的文件。

【选项说明】

-a, --all                 do not ignore entries starting with .

显示当前目录下包裹隐藏文件在内的所有文件列表

-l                         use a long listingformat

输出长格式列表

-i,--inode                print the indexnumber of each file

显示文件的inode信息 索引节点(index inode简称为“inode”)是Linux中一个特殊的概念,

具有相同的索引节点号的两个文本本质上是同一个文件(除文件名不同外)。

-m                         fill width with a comma separated list ofentries

水平输出文件列表

-t                         sort by modificationtime

修改最后一次编辑的文件最近修改的文件显示在最上面

-R,--recursive            listsubdirectories recursively

显示递归文件

-n,--numeric-uid-gid      like -l, but listnumeric user and group IDs

打印文件的UID和GID

-l                         use a long listingformat

ls -l列出文件和文件夹的详细信息

-h,--human-readable       with -l, printsizes in human readable format

                               (e.g., 1K 234M2G)

ls -lh列出可读文件和文件夹详细信息

-d,--directory            list directoryentries instead of contents,

                               and do notdereference symbolic links

ls -ld显示文件夹信息

-t                         sort by modificationtime

ls -ltr按时间列出文件和文件夹的详细信息

-F,--classify             append indicator(one of */=>@|) to entries

      --file-type            likewise, except do not append `*‘

      --format=WORD          across -x, commas -m, horizontal -x,long -l,

                               single-column-1, verbose -l, vertical -C

      --full-time            like -l --time-style=full-iso

ls -F按照特殊字符文件进行分类

-C                         list entries bycolumns

      --color[=WHEN]         colorize the output.  WHEN defaults to `always‘

                               or can be`never‘ or `auto‘.  More info below

ls --color=auto列出文件并标记颜色分类

 

【参数说明】

目录:指定要显示列表的目录,也可以是具体的文件。

【经验技巧】

  • 当结合管道符号“|”使用ls指令时,ls指令的输出结果送入管道后将失去彩色加亮功能。

  • 默认情况下ls指令只能显示非隐藏文件,如果要显示所有的文件列表必须使用“-a”选项

 

【生产实例】

  1. 1.       如何过滤出已知当前目录下oldboy中的所有以及目录(提示:不包含oldboy目录下面目录子目录及隐藏目录,即智能是以及目录?

分析过程:要完成此题,我们首先要想如何区分目录和文件?

1、       根据颜色区分文件和目录。

2、       ls-l结果中以d开头的就是目录。

3、       通过给目录添加标识、然后再过滤出目录。

4、       通过find直接查找指定类型的文件.

5、       其实很简单,下面的ls-l结果中以d开头的就是目录,我们需要做的就是只能把这些目录打印出来,这就是我们所说的确定要做的目标或分析具体需求

方法一:

[root@zabbix-agentboot]# ls -l|grep ^d使用正则方式的^(键盘数字6上的字符),表示过滤以d开通的行

drwxr-xr-x. 3 rootroot     1024 Feb 26 18:03 efi

drwxr-xr-x. 2 rootroot     1024 Feb 26 18:05 grub

drwx------. 2 rootroot    12288 Feb 26 17:57 lost+found

方法二:

[root@zabbix-agentboot]# ls -F把目录加上“/”便于区分和过滤出来,ls-p也可以让目录带斜线。

config-2.6.32-573.el6.x86_64  initramfs-2.6.32-573.el6.x86_64.img  System.map-2.6.32-573.el6.x86_64

efi/                          lost+found/                         vmlinuz-2.6.32-573.el6.x86_64*

grub/                        symvers-2.6.32-573.el6.x86_64.gz

[root@zabbix-agentboot]# ls -F|grep /  把包含斜线"/"的过滤出来就是目录了。

efi/

grub/

lost+found/

方法三:

[root@zabbix-agentboot]# ls -lF|grep /$

更精确一点的过滤,这里是把以“/”结尾的行过滤出来,$是正则的有一个符号,要拿下哟。

drwxr-xr-x. 3 rootroot     1024 Feb 26 18:03 efi/

drwxr-xr-x. 2 rootroot     1024 Feb 26 18:05 grub/

drwx------. 2 root root    12288 Feb 26 17:57 lost+found/

方法四:

[root@zabbix-agentboot]# find . -type d|grep -v \\.$

查找当前目录下类型为目录的文件,注意“.”表示当前目录

./efi

./efi/EFI

./efi/EFI/redhat

./grub

./lost+found

方法五:

[root@zabbix-agentboot]#  ls -lF|grep /$

drwxr-xr-x. 3 rootroot     1024 Feb 26 18:03 efi/

drwxr-xr-x. 2 rootroot     1024 Feb 26 18:05 grub/

drwx------. 2 rootroot    12288 Feb 26 17:57 lost+found/

方法六:

[root@zabbix-agentboot]# ls -dl */

drwxr-xr-x. 3 rootroot  1024 Feb 26 18:03 efi/

drwxr-xr-x. 2 rootroot  1024 Feb 26 18:05 grub/

drwx------. 2 root root12288 Feb 26 17:57 lost+found/

方法七:

[root@zabbix-agentboot]# ls -l|awk ‘/^d/‘

drwxr-xr-x. 3 rootroot     1024 Feb 26 18:03 efi

drwxr-xr-x. 2 rootroot     1024 Feb 26 18:05 grub

drwx------. 2 rootroot    12288 Feb 26 17:57 lost+found

[root@zabbix-agentboot]# ls -l|sed -n ‘/^d/p‘

drwxr-xr-x. 3 rootroot     1024 Feb 26 18:03 efi

drwxr-xr-x. 2 rootroot     1024 Feb 26 18:05 grub

drwx------. 2 rootroot    12288 Feb 26 17:57 lost+found

[root@zabbix-agentboot]#  ls -l|grep ‘^d‘ 

drwxr-xr-x. 3 rootroot     1024 Feb 26 18:03 efi

drwxr-xr-x. 2 rootroot     1024 Feb 26 18:05 grub

drwx------. 2 rootroot    12288 Feb 26 17:57 lost+found


本文出自 “努力本身就是一种收获” 博客,请务必保留此出处http://luoahong.blog.51cto.com/504977/1878860

ls 命令总结