所以, 我一直想一個大的Java源代碼樹從CP1252轉換爲UTF-8在Windows中,使用技巧和TRIX我在網上找到,specificly here。問題是,我在Windows上;我不做VB; Cygwin的iconv不採用-o
開關。批量轉換CP1252爲UTF-8在Windows
我第一次嘗試使用該生產線是:
find . -type f -print -exec iconv -f cp1252 -t utf-8 {} > {}.converted \; -exec mv {}.converted {} \;
這在工作目錄下創建一個文件{}.converted
和第二-exec
失敗的原因很明顯。周圍的iconv表達
把報價:
find . -type f -print -exec 'iconv -f cp1252 -t utf-8 {} > {}.converted' \; -exec mv {}.converted {} \;
resulsts在如下因素的錯誤:
find: `iconv -f cp1252 -t utf-8 ./java/dv/framework/activity/model/ActivitiesMediaViewImpl.java > ./java/dv/framework/activity/model/ActivitiesMediaViewImpl.java.converted': No such file or directory
雖然手工執行的個人表現完美。
我已經試驗了隨機引用,但似乎沒有工作,我錯過了什麼?爲什麼它不工作..?
Thanx提前, 拉爾斯
感謝名單,這按預期工作! 但是,你知道爲什麼find-exec表達式不起作用嗎?是否與輸出重定向有關? – Larsing 2012-03-14 08:29:23
我不確定,但'-exec'不是首選。從我學習的地方'-exec'不能執行長參數的命令。我使用'xargs'代替。 – neevek 2012-03-14 11:45:20