2011-04-08 5 views
2

이 펄 구문이 작동합니다펄 : 역 따옴표 연산자 내부 문서 작성에 유용한 종료 코드를 표준 입력에서 명령을 받아 반환 <em>유틸리티</em> 프로그램을 감안할 때

my $result = `utility -switch1 -switch2 <<HERE 
set ridin_round_the_world TRUE; 
do this; 
sign that; 
try { 
    make some_girl; 
    return 0; 
} 
except { 
    sleep --week; 
    exit 1; 
} 
HERE`; 
print "result is $result\n"; 

으로 "작품"나는 펄 스크립트를 의미 유틸리티를 실행하고 명령 목록에 파이프를두고 유틸리티가 종료 될 때까지 기다린 다음 결과를 반환합니다.

하지만 왜 작동합니까? 역 테지가 프로그램을 호출하는 것을 어떻게 알 수 있습니까? 그런 다음 여기에 문서를 파이프하십시오. 필자의 perl 구현에 운이 좋았습니까, 아니면이 표준적인 동작입니까?

+0

@toolic, yes, typo. 나는 고쳤다. 감사. –

답변

5

셸의 문서가 아닌 펄의 문서입니다. 셸에서 실행 해보십시오.

% cat <<EOF 
some 
thing 
EOF 
+0

아아, "백틱이 가변 보간법을 수행 한 다음 모든 것을 셸로 보냅니다"라는 것을 읽을 수 있습니다. " 그건 의미가 있습니다. –