Bagaimana cara mengirim pesan konsol dalam bahasa Inggris?

13

Saya orang Prancis dan menggunakan sistem Debian saya dalam bahasa Prancis.

Namun, saya ingin memiliki pesan kesalahan dalam terminal dalam bahasa Inggris. Ini memungkinkan saya untuk mempostingnya di situs web berbahasa Inggris.

Bagaimana saya bisa mengubah lokal saya untuk melakukannya? Saya tepat saya tidak ingin memiliki semua sistem saya dalam bahasa Inggris.

ppr
sumber
1
export LANGUAGE=English
Stéphane Chazelas
@StephaneChazelas Harap jelaskan efek dan dampak yang tepat dari perintah Anda (mungkin dalam jawaban lebih dari pada komentar).
ppr
lihat juga Apa yang “LC_ALL = C” lakukan?
Stéphane Chazelas

Jawaban:

10

Anda harus mengubah variabel LANG di shell saat ini.

Taruh

export LANG=en_US.UTF-8

dalam file rc shell Anda (untuk bash itu ~/.bashrc) dan restart sesi terminal (atau cukup sumber file rc sekali lagi dengan source ~/.bashrcatau bahkan hanya restart bash dengan exec bash)

Perhatikan, Anda harus membuat lokal ini sebelumnya.

Anda juga bisa menggunakannya export LANG=C.

Juga ada variabel LANG lainnya (dari man bash):

   LANG   Used to determine the  locale  category  for  any  category  not
          specifically selected with a variable starting with LC_.
   LC_ALL This  variable  overrides  the  value  of LANG and any other LC_
          variable specifying a locale category.
   LC_COLLATE
          This variable determines the collation order used  when  sorting
          the  results  of pathname expansion, and determines the behavior
          of  range  expressions,  equivalence  classes,   and   collating
          sequences within pathname expansion and pattern matching.
   LC_CTYPE
          This  variable  determines  the interpretation of characters and
          the behavior of character classes within pathname expansion  and
          pattern matching.
   LC_MESSAGES
          This  variable  determines  the locale used to translate double-
          quoted strings preceded by a $.
   LC_NUMERIC
          This variable determines the locale  category  used  for  number
          formatting.
buru-buru
sumber
1
Menggunakan LANGvariabel lingkungan hanya untuk pengaturan (pilihan) bahasa program yang dijalankan di konsol adalah salah. Untuk itulah variabel lingkungan LC_MESSAGESdan LANGUAGEdimaksudkan. Lihat Variabel lokal 'LANGUAGE' - cara mengatur bahasa Inggris sebagai bahasa utama? Bug di gettext? .
Piotr Dobrogost
2
Menambahkan komentar untuk memperingatkan pembaca bahwa meskipun jawaban itu diterima, ini tidak benar. LC_ALL=Charus digunakan sebagai gantinya dengan unset LC_ALLmengatur ulang. Lihat unix.stackexchange.com/q/87745/168003
el-teedee
9

Anda dapat memanggil aplikasi dengan sintaks berikut:

Misalnya Anda ingin halaman manual bahasa Inggris (hanya untuk satu perintah):

user@host:~# LC_ALL=C man ls

Atau Anda mengalami kesalahan (sistem saya dalam bahasa Jerman):

user@host:~$ ls -la /root/
ls: Öffnen von Verzeichnis /root/ nicht möglich: Keine Berechtigung

user@host:~$ LC_ALL=C ls -l /root/
ls: cannot open directory /root/: Permission denied
kekacauan
sumber
Berguna (tapi saya menerima jawaban lain karena pertanyaan saya adalah tentang melakukan ini secara permanen).
ppr
2
lebih banyak "C" dari "c", "c" tidak berfungsi di Debian 8.
Tristan
Saya menyarankan edit untuk LC_ALL=Cbukannya LC_ALL=cyang gagal juga untuk saya dengan pesanbash: warning: setlocale: LC_ALL: cannot change locale (c)
el-teedee
-3

Coba rujuk ini: 1) https://wiki.debian.org/ChangeLanguage

Singkatnya, Anda ingin mengatur LOCALE Anda (via LANG), lebih disukai di .bashrc Anda.

export LANG=en_US.UTF-8
C. Kelly
sumber
ok tapi saya tidak ingin mengubah bahasa sistem saya. Saya hanya ingin memiliki beberapa pesan kesalahan dalam bahasa Inggris. Mengubah bahasa sistem memiliki banyak konsekuensi.
ppr
Saya percaya meletakkannya di .bashrc Anda hanya akan memengaruhi shell Anda, serta perintah apa pun yang membaca .bashrc. Jika Anda menghilangkan "ekspor", itu tidak akan disebarkan ke perintah yang Anda mulai dari shell itu.
C. Kelly
@ckelly Itu mengubah banyak hal selain bahasa pesan kesalahan. Misalnya, urutkan pesanan, pemformatan angka, ...
derobert
@ ppr ok, tapi saya tidak ingin mengubah bahasa sistem saya - Lalu mengapa Anda menerima jawaban yang memberikan "solusi" yang sama?
Piotr Dobrogost