환경 변수 설정이 새로 후크
-
01-07-2019 - |
문제
내가 노력하고 전화하는 쉘 스크립트를 설정하는 무리의 환경 변수에 우리의 서버에서 mercurial 후크.쉘 스크립트라면 새로운 changegroup 제공하지만,환경변수 운반되지 않을 통해 과거를 호출하는 쉘 스크립트입니다.
내 hgrc 파일에 저장소 다음과 같습니다:
[hooks]
changegroup = shell_script
changegroup.env = env
I 출력을 볼 수 있는 쉘 스크립트의 출력이 다음은 환경을 명령하지만,env 명령을 포함하지 않는 새로운 환경변수를 설정 쉘 스크립트입니다.
내가 있는지 확인 쉘 스크립트는 작동할 때 자체적으로 실행되지만 실행하는 경우의 컨텍스트에서 새로 연결지 않을 제대로 설정합니다.
해결책
쉘 스크립트를 수정할 수 없습니다 그들의 환경.
http://tldp.org/LDP/abs/html/gotchas.html
스크립트를 수출하는 변수의 부모 프로세스,쉘 또는 환경입니다.다만 우리가 우리에서 학생물학,자식 프로세스할 수 있는 상속에서 부모이지만,그 반대의 경우도 마찬가지
$ cat > eg.sh
export FOO="bar";
^D
$ bash eg.sh
$ echo $FOO;
$
또한,이 문제가 더 큰으로,당신은 여러 번 호출하의 bash
bash 1 -> hg -> bash 2 ( shell script )
-> bash 3 ( env call )
그것은 것처럼 생각하고 설정할 수 있는 변수 하나의 php 스크립트는 다음 마술은 그것을 얻을 다른 단순히 실행하여합니다.
제휴하지 않습니다 StackOverflow