linux只列出目录的N种办法(翻译整理)

danny posted @ 2014年3月12日 16:23 in linux , 3067 阅读

原贴地址: http://www.linuxquestions.org/questions/programming-9/how-can-i-list-directories-only-in-linux-375219/

ls -p | grep "/"

-p 选项只会给目录后面加/

tree -d -L 1

-d 只显示目录 -L 1最大深度是1

find . -type d -exec ls -d {} \;

查找当前目录文件夹,并对每一个目录执行ls -d. 即递归列出所有目录。效果上等价于tree -d,不过输出结果是不同的。

ls -d */

I just found this out after nearly 3 years of using Linux.

不解释。。。

If you want to include the hidden directories, you may want to try one of these....

如果连隐藏目录也要一起,那么试下面之一吧。

find . -type d -exec ls -d {} \;
or
ls -d .*"/" *"/" 
or 
find . -type d

试试du看。当然,如果不喜欢左边的size,你可以du|awk '{print $2}'

呃。单行脚本都出来了。

for f in *;do if [[ -d $f  ]]; then echo $f;fi; done

当然,我认为最好还是ls -d */ 如果不要求显示隐藏目录

  • 无匹配
  • 无匹配
Avatar_small
依云 说:
2014年3月13日 11:44

zsh 下可以用:

ls -dlh *(/)
ls -dlh *(/D)

如果不需要详细信息可以直接用 print 或者 echo 取代 ls。

Avatar_small
依云 说:
2014年3月13日 11:44

zsh 下可以用:

ls -dlh *(/)
ls -dlh *(/D)

如果不需要详细信息可以直接用 print 或者 echo 取代 ls。


登录 *


loading captcha image...
(输入验证码)
or Ctrl+Enter