2011-04-22 2 views
2

저는 Perl 프로그래밍의 초보자입니다. 현재 일부 코드를 이해하고 있습니다.Perl Expect에 대한 도움말

나는 펄 코드를 기대 이해해야 코드의이 작품에서 선 아래에 언급이 :

내 $ 특급 = 새로운 기대;

$ exp-> spawn ("su");

나의 이해는 우리가 클래스의 인스턴스를 만들고 2 행에 자식 프로세스를 생성한다는 것을 알려준다.

누구든지 나를 더 분명히 설명하면 나는 정말로 그들에게 감사 할 것이다. 모든

+2

그것은 꽤 많은 지점입니다. 질문이 뭐야? –

답변

3

첫째, 나 자신을 도울 수 있도록하자 : 펄에 대한 도움말

  • perldoc을 확인합니다.
  • Perl 모듈에 대한 도움이 필요하면 CPAN을 확인하십시오.

여기서 Expect 모듈을 사용 중이며, CPAN:Expect에 있습니다. 보기의 엄격 통 사적 관점에서

, 당신이하고있는 모두가 두 가지 방법 호출입니다 : 두 가지 방법이 CPAN에 설명되어 있습니다

my $exp = Expect->new(); #Yes, the new Expect is a shorthand version 
$exp->spawn("su"); 

을, 당신은을 기대 그들이 실제로 할 (웃기려는 의도가 없으며) 첫 번째 것은 Expect 객체를 생성하고, 두 번째 것은 매개 변수없이 프로세스 "su"를 생성합니다.

이제 send 및 expect 메소드를 사용하여 프로세스에 문자열을 보내거나 입력을 요청할 때까지 기다릴 수 있습니다. 똑바로 CPAN 예제에서 :

# send some string there: 
$exp->send("string\n"); 

# then do some pattern matching with either the simple interface 
$patidx = $exp->expect($timeout, @match_patterns);