我需要找到BASH脚本方法,以在外部源文件源中的所有预定义内查找特定关键字(或组合)。应将关键字输入CLI提示符,并将所有结果显示为GROUPED BY文件名。
实施例: 有来源'包含2个文件记录的文件:
/home/user/file2.txt
/home/user/dir/file2.txt
#cat /home/user/file2.txt
the RED foX
#cat /home/user/dir/file2.txt
FOX jUmped Over
#./search.sh
#Enter word: fox
Results:
/home/user/file2.txt
/home/user/dir/file2.txt
最好的办法是什么?
答案 0 :(得分:2)
有关详细信息,请参阅grep --help
或man grep
和man find
#!/bin/bash
printf "%s" "Enter word: "
read keyword
find /home/user -type f -exec grep -lwFi "$keyword" {} +