2009-03-19 6 views
7

Potrzebuję wykryć bieżące ustawienia regionalne w systemie OS X z wiersza polecenia. Na Linux/Unix mogę polegać na LANG, ale to nie zawsze jest ustawiona:Jak wykryć bieżące ustawienia regionalne w systemie Mac OS X z powłoki

http://henrik.nyh.se/2007/10/displaying-utf-8-correctly-in-leopard-terminal

szukam narzędzi wiersza polecenia lub kodu AppleScript, który pozwala mi znaleźć te informacje. Idealnie byłoby pracować z 10,2 roku

Najbliższy znalazłem tak daleko jest

defaults read -g AppleLocale 

który działa na 10,3 roku

Odpowiedz

12

apropos yeilds Komenda locale

10.4 i nowsze choć

Edytuj:

defaults read .GlobalPreferences AppleLanguages | tr -d [:space:] | cut -c2-3 

jest wymienione here. Nie mam jednak dostępu do systemu 10.2, więc nie wiem, czy to działa.

+0

Zgadza się, ja już biegł w poprzek niego, ale to tylko 10,4 i później, tak jak wspomniałeś –

+0

Dzięki za sugestię. Działa w wersji 10.2, ale zwraca zwroty w języku angielskim, podczas gdy w wersjach 10.3 i późniejszych kod języka –

+2

domyślnie czyta -g AppleLocale działa na 10.3 i nowszych –

4
locale 

lub jeśli to nie disponible

env | grep LC_ 
+1

Niestety, żaden LC_ nie jest dostępny domyślnie w wielu instalacjach –

0
export LANG=$(defaults read -g AppleLanguages | \ 
    sed '/"/!d;s/["[:space:]]//g;s/-/_/').UTF-8 
Powiązane problemy