我在OS X上編寫了一個bash腳本來編輯包含一些帶有特殊字符的已知文本的文件中的文本。還會有一個變量需要保留,並輸入或替換一些文本。 這裏是輸入文件的內容:sed編輯帶有變量和特殊字符的文本
user_pref("intl.charsetmenu.browser.cache", "UTF-8");
user_pref("network.automatic-ntlm-auth.trusted-uris", "search.co.za");
user_pref("network.cookie.prefsMigrated", true);
我現在有這樣的代碼:
existingTrusts=`more ~/prefs.js | grep "network.automatic-ntlm-auth.trusted-uris" | awk '{print $2}' | sed 's/);//g' | sed 's/"//g'`
trustSites="company.com,organisation.co.uk,$existingTrusts"
replacementValue='"user_pref("network.automatic-ntlm-auth.trusted-uris", "$trustSites");"'
sed -i 's/^user_pref("network.automatic-ntlm-auth.trusted-uris/$replacementValue/' ~/prefs.js > ~/newPrefs.js
任何幫助表示讚賞。
無用的使用更多。 (谷歌「uuoc」)。而不是「更多文件| grep ...」,請執行「grep ... file」或「
2012-03-09 19:22:13
我不知道這裏要問什麼,除非你問如何寫另一種方式?... – Amadan 2012-03-09 19:23:47
爲什麼使用'sed -i'然後'> newPrefs.js'?你想不想進行編輯? – Sorpigal 2012-03-09 19:44:38