Linux 中某个目录中的文件数如何查看?这篇教程分分钟教会你!

举报
wljslmz 发表于 2023/03/15 23:15:41 2023/03/15
【摘要】 如果一个目录中文件数不是很多,那就可以一眼看出其中有多少个文件。但是如果计算子目录在内的文件数呢?或者如果文件数量很多,比如几百上千个,那么怎么确切地知道该目录下的文件数呢?今天我们总结一下查看 Linux 中目录下文件数量的方法。 方法1:使用 ls 和 wc 命令最简单的方法是使用 wc 命令来计算文件数。如下所示:ls | wc -l上述命令将会计算所有文件和目录,但不包括隐藏的文件和...

如果一个目录中文件数不是很多,那就可以一眼看出其中有多少个文件。但是如果计算子目录在内的文件数呢?或者如果文件数量很多,比如几百上千个,那么怎么确切地知道该目录下的文件数呢?

今天我们总结一下查看 Linux 中目录下文件数量的方法。

方法1:使用 ls 和 wc 命令

最简单的方法是使用 wc 命令来计算文件数。

如下所示:

ls | wc -l

上述命令将会计算所有文件和目录,但不包括隐藏的文件和目录。如果想要将隐藏的文件和目录也包括在内,可以在 ls 命令后添加 -A 选项,不过这不会将目录 . 以及 … 计算在内。

ls -A | wc -l

如果只想计算当前目录中的文件数(包括隐藏文件),可以使用如下组合命令:

ls -Ap | grep -v /$ | wc -l

上述命令中:

  • ls 命令的 -p 选项在目录名称的末尾添加 /;
  • ls 命令的 -A 选项会列出所有文件和目录,包括隐藏的文件,但是不包括 . 和 … ;
  • grep -v /$ 只显示文件末尾不带 / 的条目(即只显示文件);
  • wc -l 计算数量。

也就是说,使用 ls 命令列出所有文件和目录(在目录名的末尾添加 / 以将其与文件做个区分),然后使用管道重定向将其输出使用 grep 解析,grep 命令只显示末尾没有 / 的条目,最后使用 wc 命令计算条目数量。

方法2:使用 tree 命令计算目录中的文件数

除了使用 ls 和 wc 命令以外,还可以使用 tree 命令显示当前目录及其所有子目录中的文件数。如下所示:

tree -a

如上图所示,在最后一行显示了文件和目录的数量,这是包括了隐藏的文件和目录的(因为 -a 选项)。

如果只想获取当前目录中的文件数,而不需要计算子目录,可以设置级别 1,如下所示:

tree -a -L 1

方法3:使用 find 命令计算目录中的文件数

find 命令在处理文件相关的问题时,总是很有用的。

要计算目录中的文件数,首先使用 find 命令获取所有文件,然后使用 wc 命令计算数量。如下所示:

find directory_path -type f | wc -l

上述命令中 -type -f 选项表示只查找文件。

如果不希望从子目录中获取文件,请将find命令的范围限制在级别1,即当前目录。如下所示:

find . -maxdepth 1 -type f | wc -l

以上就是本次分享全部内容,欢迎讨论。

【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。