1
subprocess.check_output
의 종료 코드는 어떻게받을 수 있습니까?
반환 코드가 내 패턴과 일치하는 파일이 발견되면 0
이어야하며 패턴과 일치하는 파일이없는 경우 0이 아닌 것으로 가정합니다.
예외가있는 경우 예상대로 0이 아닌 리턴 코드를 수신합니다.subprocess.check_output에서 종료 코드 받기
try:
output = subprocess.check_output(["staf", "server.com", "PROCESS", "START", "SHELL", "COMMAND", "ls *heapdump*", "WAIT", "RETURNSTDOUT", "STDERRTOSTDOUT"])
print result
except CalledProcessError as e:
print(e.returncode)
sys.exit(e.returncode)
은'subprocess.check_output' 대신에 파일이 없다면'non-zero'를 반환하고 파일이 발견되면'0'을 반환합니까? bash가 작동하는 방식과 비슷합니다. – bobbyrne01
하위 프로세스의 출력에 관심이 있습니까? 그렇지 않다면'subprocess.call'을 사용할 수 있습니다. 그렇게한다면,'p = subprocess.Popen (..., stdout = subprocess.PIPE)'를 사용하고 프로세스가 끝나면'p.returncode'를 체크 할 필요가 있습니다. – dano