本分分享了三种方法对目录进行进行计数,第一种使用ls和wc对目录进行技术。第二种使用tree命令进行目录计数。第三种、使用find命令进行目录计数。
您如何知道一个目录有多少个文件?
在本快速教程中,您将学习各种方法来计算Linux中目录中文件的数量。
方法1:使用ls和wc命令计算目录中的行数
最简单,最明显的选择是使用wc命令对文件数量进行计数。
ls | wc -l
上面的命令将计算所有文件和目录,但不计算隐藏文件和目录。您可以-A
在ls命令中使用option来列出隐藏文件,但忽略掉。和..目录:
ls -A | wc -l
如果您只想计算当前目录中的文件数(包括隐藏文件),则可以结合使用以下命令:
ls -Ap | grep -v /$ | wc -l
让我解释一下它的作用:
-p
与ls一起添加/
在目录名称的末尾。-A
ls列出所有文件和目录,包括隐藏文件,但不包括。和..目录。grep -v /$
仅显示与-v
以结尾的(选项)行不匹配的行/
。wc -l
计算行数。
基本上,您用于ls
列出所有文件和目录(在目录名称中添加/)。然后,您可以使用管道重定向将此输出解析为grep命令。grep命令仅显示末尾没有/的行。然后,wc命令对所有此类行进行计数。
方法2:使用tree命令来计数目录中的文件数
您可以使用tree命令显示当前目录及其所有子目录中的文件数。
tree -a
如您所见,输出的最后一行显示目录和文件的数量,包括由于option而隐藏的目录和文件-a
。
如果只想获取当前目录中的文件数,则不包括子目录,可以将级别设置为1,如下所示:
tree -a -L 1
方法3:使用find命令对目录中的文件数进行计数
当处理文件时,常绿的find命令非常有用。
如果要计算目录中的文件数,请使用find命令首先获取所有文件,然后使用wc命令进行计数。
find directory_path -type f | wc -l
随着-type f
你告诉find命令只对文件的样子。
如果您不希望这些子目录中的文件,请将find命令的范围限制为1级,即当前目录。
find . -maxdepth 1 -type f | wc -l
以上就是如何在Linux中计算目录文件数的所有方法。
评论前必须登录!
注册