如何统计Linux中文件和文件夹/目录的数量

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何统计Linux中文件和文件夹/目录的数量相关的知识,希望对你有一定的参考价值。

在本教程中,我们将向您展示如何使用多个命令,并使用 ls、egrep、wc 和 find 命令执行一些高级操作。 下面的命令将可用在多个方面。

为了实验,我打算总共创建 7 个文件和 2 个文件夹(5 个常规文件和 2 个隐藏文件)。 下面的 tree 命令的输出清楚的展示了文件和文件夹列表。

# tree -a /opt
/opt
├──magi
│ └──2g
│ ├──test5.txt
│ └──.test6.txt
├──test1.txt
├──test2.txt
├──test3.txt
├──.test4.txt
└──test.txt

2directories,7files

示例 1

统计当前目录的文件(不包括隐藏文件)。 运行以下命令以确定当前目录中有多少个文件,并且不计算点文件(LCTT 译注:点文件即以“.” 开头的文件,它们在 Linux 默认是隐藏的)。

# ls -l . | egrep -c '^-'
4

细节:

ls : 列出目录内容
-l : 使用长列表格式
. : 列出有关文件的信息(默认为当前目录)
| : 将一个程序的输出发送到另一个程序进行进一步处理的控制操作符
egrep : 打印符合模式的行
-c : 通用输出控制
'^-' : 以“-”开头的行(ls -l 列出长列表时,行首的 “-” 代表普通文件)

示例 2

统计当前目录包含隐藏文件在内的文件。 包括当前目录中的点文件。

# ls -la . | egrep -c '^-'
5

示例 3

运行以下命令来计数当前目录的文件和文件夹。 它会计算所有的文件和目录。

# ls -l | wc -l
5

细节:

ls : 列出目录内容
-l : 使用长列表格式
| : 将一个程序的输出发送到另一个程序进行进一步处理的控制操作符
wc : 这是一个统计每个文件的换行符、单词和字节数的命令
-l : 输出换行符的数量
参考技术A 1) 统计当前文件夹下文件的个数:

ls -l |grep "^-"|wc -l

2) 统计当前文件夹下目录的个数:

ls -l |grep "^d"|wc -l

3) 统计当前文件夹下文件的个数,包括子文件夹里的 :

ls -lR|grep "^-"|wc -l

 
4) 统计文件夹下目录的个数,包括子文件夹里的:

ls -lR|grep "^d"|wc -l
参考技术B find / * | wc -l 所有的文件;
find / * | grep -o "/.*/" | sort -u | wc -l 所有的目录;
参考技术C ll | wc -l,注意,中间那个是竖线

Linux下如何对目录中的文件进行统计

在本文中,将展示几种查找Linux目录中的文件数量的不同方法。
统计目录中的文件数量
统计目录中文件的最简单方法是使用ls每行列出一个文件,并将输出通过管道符传递给wc计算数量:

[root@localhost ~]# ls -1U /etc |wc -l
执行上面的命令将显示所有文件的总和,包括目录和符号链接。-1选项表示每行列出一个文件,-U告诉ls不对输出进行排序,这使命令的执行速度更快。ls -1U命令不计算隐藏文件。如果只想计算文件而不包括目录,请使用以下命令:

[root@localhost ~]# ls -1Up /etc |grep -v /|wc -l
-p选项强制ls将斜杠(/)指示符附加到目录。输出结果通过管道符传递到grep -v命令,排除包含斜杠的行,并计算数量。
为了更好地控制列出的文件,使用find命令而不是ls:

[root@localhost ~]# find /etc -maxdepth 1 -type f |wc -l
-type f选项告诉find仅列出文件(包括隐藏文件),-maxdepth 1将搜索限制到第一级目录。

递归统计目录中的文件
如果想要统计目录中的文件数量,并包括子目录中的,可以使用find命令:

[root@localhost ~]# find /etc -type f|wc -l
用来统计文件的另一个命令是tree,它以树状格式列出目录的内容:

[root@localhost ~]# yum -y install tree
[root@localhost ~]# tree /root
Linux下如何对目录中的文件进行统计Linux下如何对目录中的文件进行统计
输出的内容底部会显示有多少目录,和多少文件。

总结
在本文中,将展示几种查找Linux目录中的文件数量的不同方法。

以上是关于如何统计Linux中文件和文件夹/目录的数量的主要内容,如果未能解决你的问题,请参考以下文章

linux怎么查看/etc/passwd 文件内容并统计文件的行数

linux下如何统计一个目录下的文件个数以及代码总行数的命令

linux 如何统计整个目录(包括子目录)所有文档的行数

用linux如何找出/root目录下所有的隐藏文件

linux中 ./configur没有那个文件或目录

linux下如何统计部分文件大小,有很多文件夹,还包含子文件件夹,统计出所有包含‘123’的文件的总大小