[英]grep with wild card character in shell variable
我必須按以下方式在ksh腳本中使用grep命令。 我有一個shell變量$string
,每次它都會有隨機的string參數,我想使用正則表達式“ *”來部分匹配它
我努力了:
grep "$string" file.txt
=>不部分獲取 grep "$string*" file.txt
=>在字符串末尾給出結果0次或多次 grep "*$string*" file.txt
..我逃脫了它"\\*$string*"
或"*\\$string*"
對我沒有幫助? 如何使用grep "*$string*" file.txt
? 或其他命令?
我輸入了$string="AAA"
,輸出應該匹配
AAA
或 <any number of characters>AAA<any number of characters>
如果在任何地方都找到AAA
那么它應該匹配..一般而言,grep會做到這一點,但是在這里不能獲取。
盡管您的問題不清楚,但是我懷疑您正在尋找-F
標志來固定字符串。 這樣可以確保沒有正則表達式元字符。
要搜索字符串,最好使用fgrep或等效的grep -F
-F,--fixed-strings將PATTERN解釋為固定字符串的列表,由換行符分隔,其中任何一個都將被匹配。
以下示例應匹配文件中所有出現的“ $ string”。
fgrep "$string" file.txt
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.