Linux中统计文件和目录数目
思路:管道命令 + 正则表达式
1、运行ls -l命令之后,终端输出的结果是一行一行的字符,每一行字符对应一个目录或者是文件,如果是文件的话,该行的字符串信息的第一个字符显示的是“-”,如果是目录的话,该行的字符的第一个显示的是"d",意即directory,找到这两者之间的区别,运行能够判别第一个字符的命令:
ls -l | grep "^-"
其中“^-”是一个正则化项,表示字符串的第一个字符。
2、接下来对管道命令运行的结果统计行号,即统计文件夹下文件的个数:
ls -l | grep “^-” | wc -l
3、统计文件夹下目录的个数
利用第一个字符的区别,只需要将命令ls -l | grep “^-” | wc -l修改成:
ls -l | grep “^d” | wc -l
4、统计文件夹下文件个数,包括子文件
ls -lR | grep "^-"| wc -l
5、统计文件夹下目录个数,包括子目录
ls -lR | grep "^d"| wc -l