2009-03-19 15 views
7

से मैक ओएस एक्स में वर्तमान लोकेल का पता लगाने के लिए मुझे कमांड लाइन से ओएस एक्स में वर्तमान लोकेल का पता लगाने की आवश्यकता है। लिनक्स/यूनिक्स पर मैं LANG पर भरोसा कर सकते, लेकिन यह हमेशा सेट नहीं है:खोल

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

मैं कमांड लाइन उपयोगिताओं या AppleScript कोड मुझे उस जानकारी प्राप्त करने के लिए अनुमति देता है कि के लिए देख रहा हूँ। आदर्श रूप में वे 10.2 बाद

निकटतम मैं अब तक पाया है से काम करेगा

defaults read -g AppleLocale 

जिस पर 10.3 बाद

उत्तर

12

अनुरूप आदेश locale

10.4 और

बाद में हालांकि yeilds काम करता है

संपादित करें:

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

का उल्लेख here है। हालांकि मुझे 10.2 सिस्टम तक पहुंच नहीं है, इसलिए मुझे नहीं पता कि यह काम करता है या नहीं।

+0

सही नहीं है, मैं पहले से ही यह भर में भाग गया, लेकिन केवल 10.4 और बाद में है, जैसा कि आप –

+0

सुझाव के लिए धन्यवाद का उल्लेख है। यह 10.2 में काम करता है, लेकिन रिटर्न अंग्रेजी में, जबकि 10.3 में और बाद में भाषा कोड –

+2

डिफ़ॉल्ट पढ़ता है -g AppleLocale 10.3 और बाद में –

4
locale 

या कि अगर disponible

env | grep LC_ 
+1

दुर्भाग्यवश, कोई भी एलसी_ डिफ़ॉल्ट रूप से कई इंस्टॉलों में उपलब्ध नहीं है –

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