0
我試圖在查詢日誌文件的bash腳本中創建一個函數。在查詢功能,我有一些類似於如下:Bash:在引用的表達式中使用grep引用的變量
if [ -n "$(cat some-log-file.log | grep \"$1\")" ]; then
echo "There is a match."
else
echo "No lines matched the search term."
fi
如果我送東西,我知道會在日誌文件爲$ 1,像「我不要」,我得到的輸出:
$ ./y.sh查詢「我不知道」
的grep:不要「:沒有這樣的文件或目錄
號線相匹配的搜索項
如果我嘗試單引號$。 ()表達式,它發送文字字符串,並始終評估爲true。我猜它與grep inte的方式有關打破反斜槓,但我無法弄清楚。也許我正在監督一些簡單的事情,但我一直在這裏呆了幾個小時,在論壇上尋找,並插入各種奇怪的引號和轉義字符組合。任何幫助或建議表示讚賞。
謝謝了。兩種解決方案都很好,但我贊成第二種解決方案。 – shloosh