【发布时间】:2019-01-23 16:30:00
【问题描述】:
我有以下脚本:
在找到特定扩展名的文件后,它会检查所述文件是否有特定的单词。
find . -type d \( -name ThirdParty -o -name 3rdParty -o -name 3rd_party \) -prune -o -type f \( -name "*.java" -o -name "*.cs" -o -name "*.cpp" -o -name "*.cxx" -o -name "*.cc" -o -name "*.c" -o -name "*.h" -o -name "*.scala" -o -name "*.css" -o -name "*.js" \) -exec awk '/FOO/{f=1;exit} END{if (!f) printf "%s\0", FILENAME}' {} \;
我想将包含该单词的所有文件的名称输出到一个简单的文本文件中。我试过做
find . -type d \( -name ThirdParty -o -name 3rdParty -o -name 3rd_party \) -prune -o -type f \( -name "*.java" -o -name "*.cs" -o -name "*.cpp" -o -name "*.cxx" -o -name "*.cc" -o -name "*.c" -o -name "*.h" -o -name "*.scala" -o -name "*.css" -o -name "*.js" \) -exec awk '/FOO/{f=1;exit} END{if (!f) printf "%s\0", FILENAME}' {} \; > output.txt
但是,我生成的输出文件是空的。谢谢。
【问题讨论】:
-
你问的this问题有什么区别?
-
所以在第一个问题中,如果所述文件还没有包含它,我想添加这个词。在这里,我只想知道哪些文件缺少 . output.txt 应该包含不包含该单词的文件名。 @downtheroad
-
我明白了,看看答案