簡體   English   中英

grep雙引號vs單引號

[英]grep double quotes vs single quotes

我驚訝地發現單引號版本與正則表達式一樣工作。 我現在看到的唯一真正的區別是雙引號擴展了正則表達式模式中的變量。 還有什么我想念的嗎?

單引號和雙引號之間的區別是shell問題, 而不是 grep問題。 在將參數傳遞給grep之前,shell決定是否進行變量擴展。 因為參數的shell處理的最后一步是引用刪除,所以grep甚至從不看引號。

變量擴展不是單引號和雙引號之間的唯一區別。 shell還在雙引號內執行命令替換和算術擴展。 例如:

$ echo "$(date) and 2+2=$((2+2))"
Tue Aug  5 18:52:39 PDT 2014 and 2+2=4
$ echo '$(date) and 2+2=$((2+2))'
$(date) and 2+2=$((2+2))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM