這是針對Apple平臺的。我的最終目標是找到並替換firefox首選項文件「prefs.js」中的一行以關閉更新。我希望能夠在Mac上爲所有帳戶執行此操作,包括用戶模板(未在示例中包含該模板)。到目前爲止,我已經能夠得到所有具有prefs.js文件的路徑列表文件與此:如何使用引號將命令的結果包裝到另一個命令中?
find /Users -name prefs.js
我再放入變量舊偏好和新的首選項:
oldPref='user_pref("app.update.enabled", false);'
newPref='user_pref("app.update.enabled", true);'
然後,我有一個「for循環」與sed命令來替換舊的偏好與新偏好:
for prefs in `find /Users -name prefs.js`
do
sed "s/$oldPref/$newPref/g" "$prefs"
done
我遇到的問題是,「查找」命令與返回的完整路徑笨「應用程序支持」的路徑名稱如下:
/Users/admin/Library/Application Support/Firefox/Profiles/437cwg3d.default/prefs.js
該命令運行時,我得到這些錯誤:
sed: /Users/admin/Library/Application: No such file or directory
sed: Support/Firefox/Profiles/437cwg3d.default/prefs.js: No such file or directory
我假設我不知需要得到「查找」命令將輸出路徑用「sed」命令的引號封裝來正確解析?我在正確的道路上?我試圖將find命令放到sed中來包裝引號,但我無法獲得任何正確的工作。請讓我知道,如果我應該採取不同的方式。謝謝。
謝謝!那就是訣竅。我仍然每天都在學習新的東西。 – russeller