2009-03-19 8 views
7

Necesito detectar la configuración regional actual en OS X desde la línea de comandos. En Linux/Unix que puedo confiar en LANG, pero no siempre se establece:Cómo detectar la configuración regional actual en Mac OS X desde el shell

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

Busco utilidades de línea de comandos o código AppleScript que me permite encontrar esa información. Lo ideal sería que trabajarían desde 10,2 en adelante

El más cercano que he encontrado hasta ahora es

defaults read -g AppleLocale 

que trabaja en 10.3 en adelante

Respuesta

12

yeilds propósito del comando locale

10.4 y más adelante sin embargo

Editar:

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

se menciona here. Sin embargo, no tengo acceso a un sistema 10.2, así que no sé si funciona.

+0

correcta, ya que corrió a través de ella, pero es sólo el 10,4 y más tarde, como usted menciona –

+0

Gracias por la sugerencia. Funciona en 10.2, pero en retornos en inglés, mientras que en el 10.3 y posterior devuelve el código de idioma –

+2

, por defecto, lee -g AppleLocale funciona en 10.3 y más tarde –

4
locale 

o si eso no es disponible

env | grep LC_ 
+1

Desafortunadamente, no hay LC_ disponibles por defecto en muchas instalaciones –

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