ls -l 顯示出現亂碼

安裝Ubuntu,我習慣區域選擇「Taipei」,語言選擇「美式英文(English, United States)」,但在純文字模式下,使用ls -l查看檔案資訊時,中間總出現亂碼,算一下欄數,亂碼的那一欄應該要出現的是月份:「一」、「二」、……、「十二」。
發生的原因,是因為區域格式的設定在作祟,若要使亂碼改為用英文顯示,可以去修改文件/etc/default/locale修改環境變數LC_TIME
原本檔案內容可能:
LANG=en_US.UTF-8 LC_NUMERIC=lzh_TW LC_TIME=lzh_TW LC_MONETARY=lzh_TW LC_PAPER=lzh_TW LC_NAME=lzh_TW LC_ADDRESS=lzh_TW LC_TELEPHONE=lzh_TW LC_MEASUREMENT=lzh_TW LC_IDENTIFICATION=lzh_TW
將值「lzh_TW」改為「en_US.UTF-8」就能以英文顯示,順便將其他格式設定設為美式的慣用格式好了,於是整份文件內容如下:
LANG=en_US.UTF-8 LC_NUMERIC=en_US.UTF-8 LC_TIME=en_US.UTF-8 LC_MONETARY=en_US.UTF-8 LC_PAPER=en_US.UTF-8 LC_NAME=en_US.UTF-8 LC_ADDRESS=en_US.UTF-8 LC_TELEPHONE=en_US.UTF-8 LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=en_US.UTF-8
或者你心一橫,可以將LC設定值全部砍掉,locale文件就只剩下一行:
LANG=en_US.UTF-8

留言

這個網誌中的熱門文章

Python的10進制與16進制轉換

設定CPU的Cache模式:MTRR