linux下如何控制ls只显示目录或者只显示文件?可以通过grep过滤的方式来实现。
只显示目录
$ ls -l | grep ^d
只显示文件
$ ls -l | grep ^-
说明:
通常执行 ls -l 命令后后会得到类似下面的内容:
$ ls -l
-rwxr-xr-x 1 1000 1000 47 Nov 22 04:09 autogen.sh
drwxr-xr-x 4 1000 1000 4096 Dec 2 20:10 bootstrap
可以看到文件是以"-"开头 , 目录是"d"开头的, 所以这就是后面grep的内容。
正则表达式中^符合表示匹配输入字符串开始的位置。