2013-07-18 2 views
0

우리는 우리가 2 가지 결과를 기대하고있는 시나리오를 가지고 있습니다. 아래에서 상태 명령을 보낸 후 2 가지 가능한 결과가 나타납니다. '실행'또는 '실행되지'다중 결과를 기대하는 pexpect를 설정하는 방법

t.sendline('status') 
i=t.expect('run') 
if i!=0: 
    t.sendline('start') 
else: 
    break 

우리가 우리의 스크립트를 실행하는 경우, 그것은 i=t.expect('run') 라인에 갇히지 유지하고 상태를 반환 할 방법

'를 실행할 수 없습니다'때 실패 예 1. i=t.expect('run')을 실행할 때 스크립트가 종료되지 않고 계속 실행됩니다. 2. 스크립트에서 예상되는 결과 2 개를 사용하여 결과를 실행할 수 있습니다. 또한

덕분에 모든 감사

답변

3
t.sendline('status') 
i=t.expect(['run','not run']) 
if(i==0): 
    t.sendline('start') 
else: 
    break; 

소스 http://www.noah.org/wiki/pexpect

+0

참조하십시오 기대 방법에 대한 문서 : http://pexpect.readthedocs.org/en/latest/api/pexpect.html#pexpect .spawn.expect –