问题:如何获得名称中包含多行的所有名为“ interesting-file.txt”的文件?
背景调查:
我可以轻松找到文件 find . -name "interesting-file.txt"
我相信我需要使用某种形式的wc -l
来获取他们的行号。
我想我会用awk '$1 > 1'
多行查找那些文件。
但是我在将所有内容组合在一起时遇到了问题。
我尝试了几种
find . -name "interesting-file.txt" | awk '{print wc -l $0}'
没有成功。除了寻找相关命令之外,我还没有开始“大于一个”。
我在OSX上,使用标准终端。
谢谢你的帮助!
我会去这样的事情:
find . -name "interesting-file.txt" -exec awk 'END { if (NR > 1) print FILENAME }' {} \;
找到的所有文件都传递给awk,如果行数NR
大于1 ,则awk将打印名称。
使用GNU awk,您可以利用该ENDFILE
块,并用于{} +
最大程度地减少awk的调用次数:
find . -name "interesting-file.txt" -exec awk 'ENDFILE { if (FNR > 1) print FILENAME }' {} +