쉘 스크립트에서 사용할 수 있도록 Perl에서 대소 문자를 구분하여 Windows 환경 변수를 설정하려고합니다.Perl에서 대소 문자를 구분하는 Windows 환경 변수 설정
그러나 나는 펄에서 호출 된 쉘 스크립트에서 system
명령을 사용하여 소문자로 사용하려고 시도하고 Msys로 실행할 때 환경 변수가 모두 대문자임을 알아 냈습니다. 예를 들어
, 다음 스크립트 :
#!perl
system "echo echo TOTO=\$TOTO > toto.sh";
system "echo echo Titi=\$Titi >> toto.sh";
system "echo echo TITI=\$TITI >> toto.sh";
$ENV{'TOTO'}="0+0";
$ENV{'Titi'}="Not toto!";
system("sh toto.sh");
반환 (동안 MSYS에서 실행) 다음과 같은 출력 :
TOTO=0+0
Titi=
TITI=Not toto!
는 사람이 즉 윈도우 (가능 어떻게 설정할지 여부를 알고 있나요 환경 변수 Titi
이고 TITI
이 아님)?
감사합니다.
어떤 시스템 (OS)을 사용하고 있습니까? 제 경우 (OS X 및 Linux)에서는 작동합니다 (스크립트 작성 문장에서 달러를 인용해야했습니다). 예 : 시스템 "echo echo TOTO = '\ $ TOTO'> toto.sh"; – Matteo
내가 얻을 : TOTO = 0 + 0, Titi = 아니 토륨 !, TITI = – Matteo
나는 불행히도 Windows를 사용 ... 나는 질문을 업데이 트됩니다. –