我一直在試圖給grep一個確切的殼「變量」用字邊界,我怎樣才能從shell變量grep的值?
grep "\<$variable\>" file.txt
但沒有設法;我嘗試了其他一切,但沒有成功。
其實我從一個Perl腳本調用grep
:
$attrval=`/usr/bin/grep "\<$_[0]\>" $upgradetmpdir/fullConfiguration.txt`
$_[0]
和$upgradetmpdir/fullConfiguration.txt
包含一些匹配的 「文本」。
但操作後$attrval
爲空。
「<" and ">」都沒有任何的grep我熟悉的單詞邊界。這是什麼操作系統?你對字面意義上的「$ variable」感興趣還是對它的shell擴展感興趣?你用「shell」和「perl」標記了這個;這是什麼? –
我已經更新了這個問題,看看。 – Gaurav
您必須擔心反斜槓被解釋了多少次。 Perl正在剝離反斜槓; 'grep'看到的參數不包含任何反斜槓。您需要將Perl代碼中的反斜槓加倍以獲得所需的效果。 –