堕落不振功业废,勤耕不辍日月新

Shell Script 檢查檔案是否有指定字串

C/C++ hailen 10℃

在 Linux CLI 下可以用 grep 指令, 將檔案包含有指定字串的行印出, 或者配合 -c 參數直接印出匹配的行數, 例如:

$ grep -c string filename.txt

如果在 Shell Script 要檢查檔案是否有指定字串, 當然可以檢查以上指令輸出的數值, 但另一個更方便的方法, 是用 grep 的 -q 參數, 具體寫法是這樣:

#!/usr/sh

if grep -q search_string filename.txt; then
  echo "Found search_string."
fi

grep 指令當加上 -q 參數後, 會根據搜尋結果回傳 0 或者 1 的 exit code, 當找到字串回傳 0; 找不到回傳 1.

如果在 CLI 使用 -q 參數, 可以用 $? 變數查詢回傳結果:

$ echo ‘hello word’ | grep hi ; echo $?
1
$ echo ‘hello word’ | grep he ; echo $?
hello word
0

The post Shell Script 檢查檔案是否有指定字串 appeared first on Linux 技術手札.

转载请注明:我是IT » Shell Script 檢查檔案是否有指定字串

喜欢 (0)or分享 (0)