2013-12-16 97 views
0

我在我的構建文件使用SED和內部的串要替換:搜索用雙引號括號

  • $迴應[「富」] [0] [「酒吧」]

  • 'b343443-45454-dfdf4545-trnj5ff56t'

目前我有:

小號@ \ $迴應[ 「富」] [0] [ 「酒吧」] @ \ 'b343443-45454-dfdf4545-trnj5ff56t \'

然而,SED似乎不喜歡雙引號。我試圖逃脫他們,但得到同樣的問題。有人能指出我可以如何更好地構建這種表達?

回答

4

雙引號都沒有問題,你需要躲避[ ]

echo '$response["foo"][0]["bar"]'|sed 's/\$response\["foo"\]\[0\]\["bar"\]/\x27b343443-45454-dfdf4545-trnj5ff56t\x27/'           
'b343443-45454-dfdf4545-trnj5ff56t' 
+0

其實,我已經逃過括號,忽略補充說。即使逃跑了,我也遇到了一個問題。如果我刪除雙引號,並用單引號替換它,我不會遇到問題(除了搜索錯誤的東西)。括號內的雙引號不會被解釋爲我正在搜索的字符串的一部分。 –

0

我已經解決了這個問題,並很可能會這麼做遲早如果我在正確的位置張貼了。如前所述,這是構建文件(XML文件)中的SED命令。雙引號需要寫成&「;被正確讀取。所以,這真的是我應該在PHING集團而不是SED集團尋求的東西。哎呦!