linux locale是什么

linux locale是Linux系統(tǒng)中多語(yǔ)言環(huán)境的設(shè)置接口,使用locale命令可以設(shè)置和顯示程序運(yùn)行的語(yǔ)言環(huán)境;locale會(huì)根據(jù)計(jì)算機(jī)用戶所使用的語(yǔ)言,所在國(guó)家或者地區(qū),以及當(dāng)?shù)氐奈幕瘋鹘y(tǒng)定義一個(gè)軟件運(yùn)行時(shí)的語(yǔ)言環(huán)境。

linux locale是什么

本教程操作環(huán)境:linux5.9.8系統(tǒng)、Dell G3電腦。

linux locale是什么?

Linux 命令之 locale?

命令介紹

locale 是 Linux 系統(tǒng)中多語(yǔ)言環(huán)境的設(shè)置接口,在 Linux 中,使用 locale 命令來(lái)設(shè)置和顯示程序運(yùn)行的語(yǔ)言環(huán)境,locale 會(huì)根據(jù)計(jì)算機(jī)用戶所使用的語(yǔ)言,所在國(guó)家或者地區(qū),以及當(dāng)?shù)氐奈幕瘋鹘y(tǒng)定義一個(gè)軟件運(yùn)行時(shí)的語(yǔ)言環(huán)境。

通過(guò) locale 來(lái)設(shè)置程序運(yùn)行的不同語(yǔ)言環(huán)境,locale 由ANSI C提供支持。locale 的命名規(guī)則為_(kāi).,如zh_CN.UTF-8,zh代表中文,CN代表大陸地區(qū),UTF-8表示字符集。在locale環(huán)境中,有一組變量,代表國(guó)際化環(huán)境中的不同設(shè)置。

locale 設(shè)置規(guī)則

_.

zh_CN.utf8  zh:表示中文 CN:表示大陸地區(qū) Utf8:表示字符集  de_DE.utf-8@euro  de:表示德語(yǔ) DE:表示德國(guó) Utf-8:表示字符集 euro:表示按照歐洲習(xí)慣加以修正

使用詳解

設(shè)置locale的根本就是設(shè)置一組總共12個(gè)LC開(kāi)頭的變量,不包括LANG和LC_ALL
locale默認(rèn)文件存放位置: /usr/share/i18n/locales

(一)查看當(dāng)前 locale 設(shè)置

列出所有啟用的 locale:

[root@htlwk0001host ~]# localeLANG=zh_CN.UTF-8 LC_CTYPE="zh_CN.UTF-8"LC_NUMERIC="zh_CN.UTF-8"LC_TIME="zh_CN.UTF-8"LC_COLLATE="zh_CN.UTF-8"LC_MONETARY="zh_CN.UTF-8"LC_MESSAGES="zh_CN.UTF-8"LC_PAPER="zh_CN.UTF-8"LC_NAME="zh_CN.UTF-8"LC_ADDRESS="zh_CN.UTF-8"LC_TELEPHONE="zh_CN.UTF-8"LC_MEASUREMENT="zh_CN.UTF-8"LC_IDENTIFICATION="zh_CN.UTF-8"LC_ALL=

分別介紹下:

  • LANG:LANG的優(yōu)先級(jí)是最低的,它是所有LC_*變量的默認(rèn)值,下方所有以LC_開(kāi)頭變量(LC_ALL除外)中,如果存在沒(méi)有設(shè)置變量值的變量,那么系統(tǒng)將會(huì)使用LANG的變量值來(lái)給這個(gè)變量進(jìn)行賦值。如果變量有值,則保持不變

  • LC_CTYPE:用于字符分類和字符串處理,控制所有字符的處理方式,包括字符編碼,字符是單字節(jié)還是多字節(jié),如何打印等,非常重要的一個(gè)變量。

  • LC_NUMERIC:用于格式化非貨幣的數(shù)字顯示

  • LC_TIME:用于格式化時(shí)間和日期

  • LC_COLLATE:用于比較和排序

  • LC_MONETARY:用于格式化貨幣單位

  • LC_MESSAGES:用于控制程序輸出時(shí)所使用的語(yǔ)言,主要是提示信息,錯(cuò)誤信息,狀態(tài)信息,標(biāo)題,標(biāo)簽,按鈕和菜單等

  • LC_PAPER:默認(rèn)紙張尺寸大小

  • LC_NAME:姓名書寫方式

  • LC_ADDRESS:地址書寫方式

  • LC_TELEPHONE:電話號(hào)碼書寫方式

  • LC_MEASUREMENT:度量衡表達(dá)方式

  • LC_IDENTIFICATION:locale對(duì)自身包含信息的概述

  • LC_ALL:它不是環(huán)境變量,它是一個(gè)宏,它可通過(guò)該變量的設(shè)置覆蓋所有LC_*變量,這個(gè)變量設(shè)置之后,可以廢除LC_*的設(shè)置值,使得這些變量的設(shè)置值與LC_ALL的值一致,注意LANG變量不受影響。

優(yōu)先級(jí):LC_ALL > LC_* > LANG

(二)查看當(dāng)前系統(tǒng)所有可用 locale

[root@htlwk0001host ~]# locale -aC C.utf8 en_AG en_AU en_AU.utf8 en_BW en_BW.utf8 en_CA en_CA.utf8 en_DK en_DK.utf8 en_GB en_GB.iso885915 en_GB.utf8 en_HK en_HK.utf8 en_IE en_IE@euro en_IE.utf8 en_IL en_IN en_NG en_NZ en_NZ.utf8 en_PH en_PH.utf8 en_SC.utf8 en_SG en_SG.utf8 en_US en_US.iso885915 en_US.utf8 en_ZA en_ZA.utf8 en_ZM en_ZW en_ZW.utf8 POSIX zh_CN zh_CN.gb18030 zh_CN.gbk zh_CN.utf8 zh_HK zh_HK.utf8 zh_SG zh_SG.gbk zh_SG.utf8 zh_TW zh_TW.euctw zh_TW.utf8

(三)設(shè)置系統(tǒng)的 locale

  1. 可以修改/etc/profile文件
    修改/etc/profile文件,在最下面增加
export LC_ALL=zh_CN.utf8 export LANG=zh_CN.utf8

命令行中使用命令 source 下配置文件,使其生效

  1. 修改/etc/locale.gen文件

將注釋打開(kāi)即可,修改完成后,執(zhí)行下 locale-gen 命令使其生效

#en_SG ISO-8859-1 en_US.UTF-8 UTF-8 #en_US ISO-8859-1
  1. 命令行模式
localectl set-locale LANG=en_US.UTF-8
  1. 修改/etc/default/locale
    注銷一下,使其生效
LANG=“en_US.UTF-8” LANGUAGE=“en_US:en”
  1. 創(chuàng)建/etc/locale.conf文件
LANG=en_AU.UTF-8 LC_COLLATE=C LC_TIME=en_DK.UTF-8

source 使其生效

相關(guān)推薦:《Linux視頻教程

以上就是

? 版權(quán)聲明
THE END
喜歡就支持一下吧
點(diǎn)贊8 分享