단일 프로그램 실행을위한 언어 설정 LANG 환경 변수를 설정합니다

C ++ i18n gettext ()“hello world”예제를 완성하십시오. 프로그램을 실행하기 전에 내보내기를 사용하여 LANG 환경 변수를 설정합니다 (Linux).

export LANG=es_MX.utf8
./hellogt

hellogt를 실행하는 동안 명령 줄 인수와 같이 언어를 설정하는 방법이 있습니까? 프로그램 테스트에 편리합니다.



답변

ksh, bash 및 유사한 쉘에서

LANG=es_MX.utf8 ./hellogt

LANG=es_MX.utf8의 호출에 대해서만 설정 됩니다 ./hellogt.

더 이식성이 좋은 프로그램이 있습니다 env

env LANG=es_MX.utf8 ./hellogt

환경 변수를 설정하고 지정된 프로그램을 실행합니다. 이것은 csh전통적인 sh방법 (첫 번째 방법을 지원하지 않는)을 포함한 모든 쉘에서 작동합니다 .


답변

당신은 다음과 같은 것을 의미합니다 :

LANG=es_MX.utf8 ./hellogt

? 아니면 명령 줄 (argv)을 구문 분석하고 전달 된 언어를 찾아 setlocale에 전달하고 싶습니까?