
我想替換目錄中存在的所有js檔案的字串
export name="test_user" &&
echo $customerName &&
sed -i -- 's/this.NAME=""/this.NAME=\"'$name'\"/g' *.js
如果我不使用空格,它可以正常工作,但使用上面的字串命令會失敗
答案1
's/this\.NAME=""/this.NAME="'"$name"'"/g'
分為幾部分:
's/this\.NAME=""/this.NAME="'
"$name"
,這是重要的一點:變數擴展必須被引用。'"/g'
另外,如果您\"
在替換中使用,並且它用單引號引起來,那麼您將在結果中插入\"
,而不是。"
您似乎也使用了一個名為 的變數customerName
。我假設這是一個錯字。
我不知道您使用的是否sed
可以按照您想要的方式進行就地編輯。
有關的: