Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/kubernetes/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 查找每个文件夹中的文件数_Linux_Find - Fatal编程技术网

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

Linux 查找每个文件夹中的文件数,linux,find,Linux,Find,以下命令将显示每个文件夹使用的磁盘 # du */ -hs 28G Amar/ 22G Aurang/ 20G Mu/ 19G Nag/ 13G Nash/ 19G Pun/ 如何知道每个文件夹中以.sql结尾的文件数 如果有必要,则没有子文件夹。尝试以下操作: $ find . -type f -name '*.sql*' ./b/a.sql ./b/c.sql ./b/b.sql ./c/a.sql ./c/d.sql ./c/c.sql .

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

# du */ -hs
28G     Amar/
22G     Aurang/
20G     Mu/
19G     Nag/
13G     Nash/
19G     Pun/
如何知道每个文件夹中以.sql结尾的文件数

如果有必要,则没有子文件夹。

尝试以下操作:

$ 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

当然有很多方法可以做到这一点。下面是一个简单的方法:

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

正如您所要求的,这种方法不考虑子目录。

您不应该太在意……只要尝试一下:

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

@FredrikPihl谢谢你启发我。我已经修改了我的答案,以保留其本质,但我现在已经考虑到了你的评论。