ฉันสร้างไฟล์การแปลภาษาท้องถิ่นen_US.utf8 , et_EE.iso88591และru_RU.utf8แล้ว ตอนนี้ถ้าฉันพยายามเปลี่ยนตัวแปรโลแคลใด ๆ เป็นru_RU.utf8หรือen_US.utf8ดังนั้นนี่จะไม่มีผลใด ๆ :
# locale -a
C
en_US.utf8
et_EE
et_EE.iso88591
POSIX
ru_RU.utf8
# LC_TIME=ru_RU.utf8
# locale | grep LC_TIME
LC_TIME="et_EE.iso88591"
# LC_TIME="ru_RU.utf8"
# locale | grep LC_TIME
LC_TIME="et_EE.iso88591"
#
อย่างไรก็ตามหากฉันเปลี่ยนตัวแปรLANG =ดังนั้นตัวแปรอื่นทั้งหมดยกเว้นLANGUAGE =และLC_ALL =รับค่าของตัวแปรLANG = มีวิธีการแก้ไขตัวแปรแต่ละภาษาแยกกันหรือไม่? นอกจากนี้ฉันแก้ไขให้ถูกต้องว่าตัวแปรโลแคลไม่ใช่ตัวแปรเชลล์ปกติ แต่ต้องการพารามิเตอร์สำหรับยูทิลิตี้ของโลแคลอีกหรือไม่
LANG
และLC_xxx
เป็นตัวแปรสภาพแวดล้อม การทดสอบของฉันแสดงว่ามีเพียงLANG
และLANGUAGE
และLC_MESSAGES
และLC_ALL
เป็นตัวแปรสภาพแวดล้อมในขณะที่ตัวแปรอื่น ๆ เช่นLC_CTYPE
และLC_MONETARY
ไม่ใช่ตัวแปรสภาพแวดล้อม (เช่นกันพวกเขาไม่ใช่ตัวแปรเชลล์)