我正在研究一个Shell脚本,它将在文件夹的所有日志文件和子文件夹中搜索特定的关键字。
我正在使用以下grep命令,但它仅显示当前目录中的关键字,而不显示子目录中的关键字。就我而言,我有一堆子目录,其中日志文件将位于其中,而不显示子目录中的文件。
grep -r -H "Keyword" *.log
请提出我该如何实现。
谢谢
答案 0 :(得分:1)
您使用了错误的参数和错误的命令。使用grep时,它应该为-R
,并且您只能在目录中搜索。
grep -R -H "Keyword" .
但是我认为您想使用find。
find . -name '*.log' -exec grep -H "Keyword" {} \;
答案 1 :(得分:0)
请您尝试以下。
find /dir_name/ -type f -name "*.log" -exec grep -l "your_string" {} \+ 2>/dev/null