Giriş
LANG ortamı değişkeninin açıklaması şöyle.
Localization değerlerini değiştirmek için bir sürü değişken var. Bunların öncelik sırası şöyle
Şöyle yaparız.
Şöyle yaparız.
Şöyle yaparız.
1. LANG Dışında Bazı Özel Ayarlar Yapmak
LANG değişkeninden memnunuz diyelim ancak örneğin zamanı kendi bölgemizin ayarından daha farklı bir şekilde görmek istiyoruz. Bu durumda LC_XYZ ortam değişkenlerini kullanmak gerekir.
Örnek
Açıklaması şöyle.
Elimizde şöyle bir kod olsun.
LANG ortamı değişkeninin açıklaması şöyle.
the "LANG" environment variable determines the language in which software programs communicate with the user.Benim sistemimde LANG'ın değeri şu
tr_TR.UTF-8
Localization Değişkenlerinin Öncelik SırasıLocalization değerlerini değiştirmek için bir sürü değişken var. Bunların öncelik sırası şöyle
1. LANG_ALL - Her şeyi ezer
2. LC_XYZ değişkenleri - Eğer varsa bu değişkenler kullanılır
3. LANG - En düşük sıradaki değişken budur.
Örnek
Elimizde şöyle bir kod olsun. Burada LC_NUMERIC değişkeni LANG'dan önce gelir. Bu yüzden printf Almanca'da ayraç olarak virgül kullanıldığı için 3.14 değerini algılayamaz ve hata verir.$ export LC_NUMERIC="de_DE.UTF-8" $ export LANG=C $ printf "%.2f\n" 3.14 -bash: printf: 3.14: invalid number 3,00Ancak kodu şöyle değiştirelim. Bu durumda LC_ALL her şey ezecek ve yerelleştirmeyi C yapacaktır. Böylece printf çalışır.
$ export LC_NUMERIC="de_DE.UTF-8" $ export LC_ALL=C $ printf "%.2f\n" 3.14 3.14C
Şöyle yaparız.
LANG=C
en_US (Amerikan İngilizcesi)Şöyle yaparız.
LANG=en_US
en_IE (İrlanda İngilizcesi)Şöyle yaparız.
>LANG=en_IE.UTF-8 ls -1 foo*
foopa.png
foo.png
fooqa.png
>LANG=C ls -1 foo*
foo.png
foopa.png
fooqa.png
Diğer1. LANG Dışında Bazı Özel Ayarlar Yapmak
LANG değişkeninden memnunuz diyelim ancak örneğin zamanı kendi bölgemizin ayarından daha farklı bir şekilde görmek istiyoruz. Bu durumda LC_XYZ ortam değişkenlerini kullanmak gerekir.
Örnek
Açıklaması şöyle.
For example, I use LANG=en_US.utf8 on my Linux box, but I override LC_TIME=en_GB.utf8 to get 24-hour time in English. This would not be possible to do if LC_ALL were set.2. Java
Elimizde şöyle bir kod olsun.
import java.io.File;
public class Test {
public static void main(String[] args) {
File f = new File("\u2026");
f.toPath();
}
}
LANG'ı C yaparsak exception fırlatır.$ LANG=C java Test
Exception in thread "main" java.nio.file.InvalidPathException: Malformed input...
at sun.nio.fs.UnixPath.encode(UnixPath.java:147)
at sun.nio.fs.UnixPath.<init>(UnixPath.java:71)
at sun.nio.fs.UnixFileSystem.getPath(UnixFileSystem.java:281)
at java.io.File.toPath(File.java:2234)
at Test.main(Test.java:6)
LANG'ı en_US.UTF-8 yaparsak çalışır$ LANG=en_US.UTF-8 java Test
# No crash!
Hiç yorum yok:
Yorum Gönder