다음번 루프는 출력을 생성하지 않습니다. 마지막 exp-> expect (5) 행 (잠자기의 종류)이없는 경우. 루프가 '보낸'명령을 완료하는 데 '너무 빠름'으로 실행 중이기 때문에 이것이라고 생각합니다. 다음 명령이 이전 명령이 완료 될 때만 실행되도록하려면 어떻게해야합니까? 로그 파일에 출력을 수집 중입니다.perl은 원격으로 30 개의 명령을 수행 할 것을 기대합니다.
모든 조언, pl.
ty.
use Expect;
...
...
foreach my $cmd (@cmd_array){
$exp->expect(3,
[ qr/($|#)/ => sub { shift->send("$cmd");}]
);
exp->expect(5);
}
$ cmd를 마지막에 개행 문자가 있습니다. 그래서 나는 다른 것을 공급할 필요가 없다. – rajeev
exp_continue를 사용하면 동일한 명령이 계속 실행됩니다. 끊이지 않는 루프를 죽여야합니다. – rajeev