0
我正在嘗試編寫一個shell腳本來在Ubuntu 14.04上找到替換這行代碼的代碼。SED用單引號和雙引號替換內容
//Code before script runs
/*define('FS_METHOD','direct');*/
//Code after script runs
define('FS_METHOD','direct');
sudo sed -i "[email protected]/*define('FS_METHOD','direct');*/@define('FS_METHOD,'direct');@g" /home/example/example.txt
運行此行代碼後,我沒有得到任何錯誤,但它不會刪除/ * * /我相信這是因爲單引號的。我試圖用反斜槓轉義它們,但它也不起作用。任何人有任何想法如何讓這個工作?
我嘗試這兩種方法並沒有爲我工作。我在OSX和Ubuntu的終端上運行了兩條線,都沒有工作。我不能想到我會做錯什麼。 – Drew
也許你需要雙重逃避一切,因爲你在sudo下運行? idk ...當你不在sudo下運行時,它的行爲是否符合要求?如果不包含'-i'選項(消除文件權限問題),它是否會產生預期的輸出? –
試圖使用sudo,而不是使用它,它給出了相同的結果。儘管如果刪除單引號,它確實有效。 – Drew