我經常需要在我的計算機上編寫簡單的BASH腳本來處理文件。 BASH似乎很難處理UTF-8內容。BASH有沒有UTF-8替代品?
- 有什麼版本的BASH完全兼容UTF-8嗎?
- 是否有BASH的替代品,它使用類似或相同的語法,但是與UTF-8兼容?
我經常需要在我的計算機上編寫簡單的BASH腳本來處理文件。 BASH似乎很難處理UTF-8內容。BASH有沒有UTF-8替代品?
我把你的問題是通常的sed/awk/grep等不支持unicode,所以stackoverflow的解決方案通常不適合你?
bash本身非常有限,沒有外部程序。
要做你想做的事情,你可能不得不使用bash以外的更多功能的編程語言。 UTF-8本身並不是非常適合處理,你需要將它解析爲2字節或4字節字符,然後處理字符。 (即轉換爲UTF-16或UTF-32),然後將其轉換回UTF-8進行存儲。
Bash本身不應該有使用UTF8的任何問題。您的問題很可能是由其他程序引起的,例如終端仿真器或編輯器。確保您的環境設置爲使用UTF8。有關更多信息,請參閱here。
也許如果你對自己遇到的問題更加具體,有人可能會給你一個明智的答案。 – 2012-04-24 04:48:33
雖然任意[二進制數據可能很麻煩](http://mywiki.wooledge.org/BashFAQ/058),但Bash對UTF-8(以及任何其他編碼編碼)都可以正常工作。你可能想查看一下[locale documentation](http://mywiki.wooledge.org/locale)。 – l0b0 2012-04-24 10:45:58