我试图找出使用以下标志的文件 - TRACE_WANTED”。但是,我不希望 find 在 .c 和 .h 中搜索此标志。如何发出命令以从*.c 和 *.h 文件。
这是我正在使用的典型命令 -
find ./ -iname *.c -exec grep -iHrn TRACE_WANTED {} \;
Run Code Online (Sandbox Code Playgroud)
GNUgrep能够从其内置的递归搜索中排除 globs。尝试:
grep -iHrn --exclude='*.c' --exclude='*.h' TRACE_WANTED
Run Code Online (Sandbox Code Playgroud)
这将从当前目录开始递归搜索,就像您的find命令一样。它排除所有*.c和*.h文件。