[Ubuntu] 設定 LC_ALL 環境變數時,出現 cannot change locale 錯誤?

[Ubuntu] 設定 LC_ALL 環境變數時,出現 cannot change locale 錯誤?

今天在一台 Ubuntu 機器上,想要設定  LC_ALL 環境變數,

結果居然不能設成常見的  en_US.UTF-8 ,

出現了 setlocale: LC_ALL: cannot change locale (en_US.UTF-8): No such file or directory:

$ LC_ALL=en_US.UTF-8

-bash: warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8): No such file or directory

 

執行  locale -a 看一下,

結果這台機器只有  C 、 C.UTF-8 和  POSIX 這三種 locale,

真是詭異…

$ locale -a

C
C.UTF-8
POSIX

 

查了一下,可以用  locale-gen 產生常見的 locale,例如:

sudo locale-gen en_US
sudo locale-gen en_US.UTF-8

 

產生完後,再執行下面指令來更新:

dpkg-reconfigure locales

 

這樣之後就可以把  LC_ALL 環境變數設成  en_US.UTF-8 沒問題啦~

 

參考資料:localization – Remove a locale in Ubuntu – Server Fault

(本頁面已被瀏覽過 104 次)

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料