我有一个包含100个子目录的文件夹。
dir1 dir2 dir3 dir4 ...
每个子目录包含一个文件simv.log
此外,每个目录都包含-FAILED.txt
或PASSED.txt
文件。
我想在存在simv.log
的FAILED.txt
文件中grep一个模式“ ABCD”。
我可以使用以下命令找到所有包含FAILED.txt的目录:find . -name "FAILED.txt" -print "%h\n"
如何进一步使用此输出在那些目录的simv.log
文件中grep ABCD?
find . -name "FAILED.txt" -printf "%h/simv.log\0" | xargs -0 grep -F ABCD
应该做的把戏
使用-execdir primary。
find . -execdir test -f FAILED.txt \; \
-execdir grep ABCD simv.log \;