2013-09-24 6 views
3

init.d 스크립트의 템플리트로 /etc/init.d/httpd를 사용하고 있습니다. 데몬 기능 전에 거기에 있어야합니다 ("C"가 설정되는) 이유 HTTPD_LANGBash 스크립팅 - init.d 스크립트 작성하기

LANG=$HTTPD_LANG daemon --pidfile=${pidfile} $httpd $OPTIONS 

누군가가 설명 할 수 : 나는 다음 줄을 제외하고 파일에 벌어지고있는 모든 것을 이해? 감사.

+1

라인의 구문에 대해 묻고 있습니까? 아니면 환경에서'LANG'을'C'로 설정하여'daemon' 기능을 실행해야하는 이유를 묻고 있습니까? –

+0

줄 구문에 대해 묻습니다. – user2759991

답변

2

명령을 실행하기 직전에 환경 변수를 지정하면 변수는 명령 환경에서 효과적으로 내보내지만 상위 환경에는 영향을주지 않습니다. man에서 bash :

위의 매개 변수에서 설명한대로 매개 변수 지정을 접두사로 사용하여 간단한 명령이나 기능의 환경을 임시로 보강 할 수 있습니다. 이 할당 문은 해당 명령에 표시된 환경에만 영향을줍니다.

그래서이 초기화 스크립트에서 일어나고있는 것은 당신이 HTTPD_LANG을 구성한 어떤로 설정 LANG 변수 (이 경우 "C"에서), 거기에서 아마 daemon 명령의 환경에 수출 (그리고 점점 될 것입니다 httpd의 환경으로).

0

사용자 상호 작용이 표시되지 않는 항목은 '적절한 현지화'로 인해 속도가 느려집니다. 설정 LANG = "C"는 에 따라 배의 속도 향상까지 제공 할 수 있습니다 Barry Kauler's tests.

당신 LANG을 임시 변수에 LANG 변수를 저장 LANG = C로 중요한 프로그램을 실행 한 후 복원하여 동일한 속도 향상을 얻을 수 있습니다