我有以下.sh文件,它搜索大量文件中的大量搜索项目。但是如果$ file中存在其中一个搜索项,我想在第一个结果处继续while循环。目前,所有文件都匹配查询。第一次打击就足够了。
我该怎么做?
while read file
do
echo $file
grep -o -f searchItems.txt "$file" >> results.txt
done < filelist.txt
感谢。
答案 0 :(得分:1)
成功break
返回后,您可以使用grep
:
while read -r key; do
while read -r actualFile; do
echo "searching for $key in $actualFile"
grep -o "$key" "$actualFile" >> messageKeysInUse.txt && break
done < filelist.txt
done < allMessageKeysFromDB.txt
一旦grep
成功,它就会突破内部while循环。