2009-03-19 11 views
7

OS Xの現在のロケールをコマンドラインから検出する必要があります。 Linux/Unixでは、私はLANGに依存することができますが、それは常に設定されていない:私は、コマンドラインユーティリティまたは私はその情報を見つけることができますAppleScriptのコードを探していますシェルからMac OS Xの現在のロケールを検出する方法

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

。理想的には彼らは、以降の10.2

から私は今のところ以降10.3

答えて

12

に取り組んでいます

defaults read -g AppleLocale 

はaproposをコマンドに

しかし locale

10.4以降をyeildsさを発見した最も近い働くだろう

編集:

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

は、hereと記載されている。私は10.2システムにアクセスできないので、動作するかわかりません。

+0

正しいはない場合、私はすでにそれを越え走ったが、あなたは提案を –

+0

感謝を言及として、唯一の10.4以降です。 10.2以降では動作しますが、10.3以降では言語コードが返されますが、 –

+2

のデフォルトは-g AppleLocaleが10.3以降で動作します。 –

4
locale 

またはそれはdisponible

env | grep LC_ 
+1

残念ながら、多くのインストールでデフォルトでLC_は利用できません –

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