网上搜了一下,大部分都是用:
ls -l |grep ^d
其实以前俺也用过,但是就是记不住. 俺仔细研究了一下,搞明白了为什么这条命令可以只显示目录了.
ls -l 列举文件的详细信息,例如
-rw-r--r-- 1 root root 668734007 3月 10 15:10 10201_database_linux32.zip
drwxr-xr-x 6 oracle oinstall 4096 3月 10 15:12 database
你可以看到每条记录的头一个字符表示他是文件还是目录
grep命令是正则表达式的过滤搜索命令,一般是逐行匹配. 其中模式字符^,表示以什么开头
grep ^d含义就是匹配哪些以d开头的行.
这样两条命令就是显示目录. 由此我们可以引申出下面有用的命令
ls -l |grep ^- ---------------------只列举文件
ls -R |grep ^abc ---------------在一个目录下(包括子目录)查找所有以abc开头的文件和目录
ls -R |grep abc ---------------在一个目录下(包括子目录)查找所有名称包含abc的文件和目录
这不就是传说中的Window下的文件查找命令吗?!
所以学东西真的需要理解. 否则一时记住了,要不了多久就会忘记的.