Linux统计文件、目录个数,文件行数

来源:互联网 发布:温湿度数据采集器 编辑:程序博客网 时间:2024/05/21 14:42

1.Linux下统计当前文件夹下的文件个数、目录个数:

ls |wc -l  统计当前目录下的非隐藏目录和非隐藏文件的个数

ls -a |wc -l   统计当前目录下的所有文件和目录的个数实际数目

find./  |wc -l  统计当前目录下的所有文件包括隐藏文件和文件夹

ls -l|grep "^-"|wc -l  统计当前文件夹下文件的个数

ls -l|grep "^d"|wc -l  统计当前文件夹下目录的个

ls -lR|grep "^-"|wc -l  统计当前文件夹下文件的个数,包括子文件夹里的

ls -lR|grep "^d"|wc -l   统计文件夹下目录的个数,包括子文件夹里的


说明:

ls -l :长列表输出当前文件夹下文件信息(注意这里的文件,不同于一般的文件,可能是目录、链接、设备文件等)

grep"^-":这里将长列表输出信息过滤一部分,只保留一般文件,如果只保留目录就是 ^d

wc -l:统计输出信息的行数,因为已经过滤得只剩一般文件了,所以统计结果就是一般文件信息的行数,又由于一行信息对应一个文件,所以也就是文件的个数。


2.linux统计文件行数:

语法:wc [选项] 文件…

说明:该命令统计给定文件中的字节数、字数、行数。如果没有给出文件名,则从标准输入读取。wc同时也给出所有指定文件的总统计数。字是由空格字符区分开的最大字符串。

该命令各选项含义如下:

  - c 统计字节数。

  - l 统计行数。

  - w 统计字数。

这些选项可以组合使用。

输出列的顺序和数目不受选项的顺序和数目的影响。

总是按下述顺序显示并且每项最多一列。

行数、字数、字节数、文件名

如果命令行中没有文件名,则输出中不出现文件名。

例如:

$ wc - lcw file1 file2
4 33 file1
7 52 file2
11 11 85 total

举例分析:

1.统计demo目录下,js文件数量:

find demo/ -name "*.js" |wc -l

2.统计demo目录下所有js文件代码行数:

find demo/ -name "*.js" |xargs cat|wc -l 或 wc -l `find ./ -name "*.js"`|tail -n1

3.统计demo目录下所有js文件代码行数,过滤了空行:

find /demo -name "*.js" |xargs cat|grep -v ^$|wc -l


0 0
原创粉丝点击