首页>国内 > 正文

如何查看 Linux 中某个目录中的文件数

2023-03-15 11:08:32来源:TIAP

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


(资料图片)

今天我们总结一下查看 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

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

关键词:

相关新闻

Copyright 2015-2020   三好网  版权所有 联系邮箱:435 22 640@qq.com  备案号: 京ICP备2022022245号-21