查找每个文件夹中的文件数

时间:2014-01-11 13:02:37

标签: linux find

以下命令将显示每个文件夹占用的磁盘。

# du */ -hs
28G     Amar/
22G     Aurang/
20G     Mu/
19G     Nag/
13G     Nash/
19G     Pun/

我如何知道每个文件夹中以.sql结尾的文件数?

如果重要的话,没有子文件夹。

3 个答案:

答案 0 :(得分:1)

试试这个:

$ find . -type f -name '*.sql*'
./b/a.sql
./b/c.sql
./b/b.sql
./c/a.sql
./c/d.sql
./c/c.sql
./c/b.sql
./a/a.sql
./a/b.sql

$ find . -type f -name '*.sql*' | awk -F/ '{print $2}' | uniq -c
      3 b
      4 c
      2 a

答案 1 :(得分:1)

肯定有很多方法可以做到这一点。这是一个简单的方法:

 for i in *; do [[ -d $i ]] || continue; echo $i/: $(find "$i" -maxdepth 1 -type f -name '*.sql' | wc -l); done

根据您的要求,此方法不考虑子目录。

答案 2 :(得分:0)

你不应该忍受它......试试吧:

ls -l | grep *.sql | wc -l