如何取得在 find 中啟動的 grep 指令的退出代碼:
例如:
find ./export-`date +%Y%m%d`-*/instance.log -type f -exec grep -i -m1 error {} \;
無論文件中是否找到“錯誤”一詞,它都會返回退出代碼0
instance.log內容如下:
2016-09-30 09:01:20 : 錯誤2 (16)
答案1
與 -exec 選項一起使用的命令 find 將傳回 grep 命令的狀態代碼。例子:
find . -type f -exec grep 201 {} +
當我在包含一些包含模式“201”的日誌檔案的資料夾中執行它時,將返回 0。您可以使用 echo $? 檢查它在你的控制台中(如果找到模式則給 0)。
如果我在另一個資料夾中執行相同的命令,其中包含不包含「201」的文件,則 find 命令的狀態代碼將為 1