Discussion:
[問題] grep搜尋檔案
(时间太久无法回复)
叫我阿希就好
2013-10-15 16:23:46 UTC
Permalink
linux新手發問

我想要找出在此目錄下(包含子目錄們)的所有.txt檔案中
不包含關鍵字abc的檔案 (因為這些檔案是錯的要把它們找出來重新改過)

想請問板友們指令該怎麼下?
是否需要加入一些正則表達式才能達到此需求?

謝謝!


--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.100.101.245
pomelocandy
2013-10-15 17:02:00 UTC
Permalink
※ 引述《Edison4ever (叫我阿希就好)》之銘言:
: linux新手發問
: 我想要找出在此目錄下(包含子目錄們)的所有.txt檔案中
: 不包含關鍵字abc的檔案 (因為這些檔案是錯的要把它們找出來重新改過)
: 想請問板友們指令該怎麼下?
: 是否需要加入一些正則表達式才能達到此需求?
: 謝謝!

我想到的解法是,grep 在有match的時候會回傳0 ,不然好像回傳1

所以用:

for i in *.txt; do
grep abc $i > /dev/null
if [ $? -ne 0 ]; then
echo $i;
fi
done

應該可以解決你的問題。

當然還要視你的abc的複雜度,如果有一些機車的要求請用grep -e

--
______ |\
/ \ | \
/ ● ● \ |__\
/ ______ \ |
/   \__/   \___|
/______________\ |

--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.233.161
※ 編輯: lc85301 來自: 140.112.233.161 (10/16 01:01)
Loading...