[英]Sed replace variable in double quotes
我創建了一個帶參數的bash腳本。 我想將該參數傳遞給sed以將現有字符串替換為由變量組成的另一個字符串:
variable=$1
echo $variable
sed -i -e 's/name="master"/name="$variable"/g' test
問題是腳本沒有用參數替換$ variable,它只是用“$ variable”替換字符串:
<host name=""$variable"" xmlns="urn:jboss:domain:3:0:>
如何用變量替換引號中的字符串?
單引號內不會發生變量擴展。 用雙引號做:
sed -i -e 's/name="master"/name="'"$variable"'"/g' test
像他一樣改變你的代碼,
sed -i -e 's/name="master"/name="'"$variable"'"/g' test
就像這樣:
var=apple
sed -i "s/pineapple/$"
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.