列出目录及其所有子目录中超过 100 行的文件

列出目录及其所有子目录中超过 100 行的文件

如何列出目录及其所有子目录中超过 100 行的文件?此类终端命令的示例将非常有帮助。

是否有一个工具可以计算给定文件的行数?

答案1

您可以使用wc字数统计实用程序来统计行数:

find . -type f -print0 | xargs -0 wc -l | sort -n

答案2

使用以下命令:

find <folder-to-search> -name "*.txt" -type f -exec sh -c 'test `wc -l {} | cut -f1 -d" "` -gt "100"' \; -print

另外,请查看-name参数,目前您只能找到以 结尾的文件.txt。您想更改它,或者只需删除参数和参数即可查找所有文件。

答案3

您也可以使用 awk 在一行中完成此操作,想将其添加为注释以支持 Paul 的回答,但由于 >> echo "1 ratings" | awk '$1<50' ratings 我无法做到:D

find . -type f | xargs wc -l | awk -F "." '$1>100'

可选 --> ortang 提到的 -name 和 find... 以及 -F 是分隔符,即使默认空格也可以像“awk "$1>100”一样工作

相关内容