GNU/Linux >> Belajar Linux >  >> Linux

LANG=C ada di sejumlah skrip /etc/init.d/*. Apa yang dilakukan LANG=C dan mengapa Anda perlu menyetel LANG=C.

Ini memaksa aplikasi untuk menggunakan bahasa default untuk keluaran, dan memaksa penyortiran menjadi bytewise.

$ LANG=es_ES man
¿Qué página de manual desea?
$ LANG=C man
What manual page do you want?
$ LANG=en_US sort <<< $'a\nb\nA\nB'
a
A
b
B
$ LANG=C sort <<< $'a\nb\nA\nB'
A
B
a
b

Seperti yang sudah dijelaskan, LANG variabel lingkungan mengontrol pelokalan.

Ini memengaruhi banyak alat baris perintah standar seperti sort , grep , awk .

Menyetel nilainya ke "C" akan memberi tahu semua alat tersebut untuk hanya mempertimbangkan karakter ASCII dasar dan menonaktifkan pencocokan multibyte UTF-8.

Alasan bagus lainnya selain pelokalan untuk menggunakan variabel lingkungan tersebut adalah kinerja:ini dapat membuat grep 1000 kali lebih cepat untuk grep versi <2.7 :http://rg03.wordpress.com/2009/09/09/gnu-grep-is-slow-on-utf-8/

Tentang alasan mengapa huruf "C" digunakan untuk menentukan lokal dasar "aman", lihat Mengapa "LANG=C"? (bukan D atau E atau F).


LANG=C adalah cara untuk menonaktifkan pelokalan. Ini digunakan dalam skrip untuk memprediksi keluaran program yang mungkin berbeda berdasarkan bahasa saat ini. Untuk informasi lebih lanjut, baca ini


Linux
  1. perintah grpck – Hapus entri yang rusak atau duplikat di file /etc/group dan /etc/gshadow.

  2. Mengapa Anda perlu meletakkan #!/bin/bash di awal file skrip?

  3. Kapan saya harus menggunakan /dev/shm/ dan kapan saya harus menggunakan /tmp/?

  1. Ukuran apa yang harus Anda alokasikan ke /, /boot, /home dan swap

  2. Apa yang dilakukan 'set -e', dan mengapa dianggap berbahaya?

  3. Perbedaan antara /etc/pam.d/login dan /etc/pam.d/system-auth?

  1. Bagaimana Linux Menangani Beberapa Pemisah Jalur Berturut-turut (/home////username///file)?

  2. Bagaimana Anda menetapkan kata sandi untuk daemon transmisi, server klien BitTorrent?

  3. Apa arti dari /usr/sbin, /usr/local/sbin dan /usr/local/bin?