python 실행 시스템 명령 4가지 방법 및 비교

Python에서 시스템 명령을 실행하는 일반적인 방법은 다음과 같다.
참고: 다음 인스턴스 코드는 Python 3.5에서 실행됩니다.

1. os.시스템 방법


os.system(cmd)
하위 터미널에서 시스템 명령을 실행하면 명령이 실행된 후 되돌아오는 정보와 되돌아오는 상태를 얻을 수 있습니다

>>> import os
>>> os.system('date')
2018  4  8    19 29 13  CST
0 # ,0 
실행 후 두 줄의 결과를 되돌려줍니다. 첫 번째 줄은 결과이고, 두 번째 줄은 실행 상태 정보입니다.

2. os.popen 방법


os.popen(cmd)
명령을 실행할 뿐만 아니라 실행된 정보 대상을 되돌려줍니다. (명령을 실행한 후 되돌려 받아야 하는 데 자주 사용됩니다.) 파이핑 파일을 통해 결과를 되돌려줍니다.

>>> import os
>>> nowtime = os.popen('date')
>>> print(nowtime.read())
2018  4  8    19 30 35  CST

3. commands 모듈


getoutput: 명령 실행 후 반환 정보 얻기
getstatus: 실행 명령의 상태 값을 가져옵니다. (실행 명령은 0을 반환합니다. 그렇지 않으면 0이 아닙니다.)
getstatusoutput: 실행 명령의 상태 값 및 반환 정보 가져오기

>>> import commonds
>>> status, output = commands.getstatusoutput('date')
>>> print(status)  # 0
>>> print(output)  # 2018  4  8    19 31 45  CST
주의1: 유닉스 시스템에서 이 방법으로 되돌아오는 되돌아오는 값 (status) 은 스크립트나 명령이 실행된 후의 되돌아오는 값과 같지 않습니다. 이것은 os를 호출했기 때문입니다.wait() 때문에 구체적인 원인은 시스템wait()의 실현을 알아야 한다.정확한 되돌아오는 값 (status) 이 필요합니다. 되돌아오는 값을 오른쪽으로 8자리 옮기기만 하면 됩니다.
주의2: 명령을 실행하는 매개 변수나 귀환에 중국어 문자가 포함되어 있으면subprocess를 사용하는 것을 권장합니다.

4. subprocess 모듈


라인에 대한 제어와 모니터링을 활용하여 되돌아오는 결과를 하나의 변수에 부여하여 프로그램의 처리에 편리하게 한다.다양한 매개 변수를 설정할 수 있으며, 사용자 정의 옵션이 많고 유연성이 높습니다.전에 os를 사용했어요.시스템 때 파일 설명자 이불 프로세스 계승 문제가 발생했습니다. 나중에close_fds = False라는 매개 변수로 해결되었습니다.공식 문서:http://python.usyiyi.cn/python_278/library/subprocess.html

>>> import subprocess
>>> nowtime = subprocess.Popen('date', shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
>>> print(nowtime.stdout.read())
2018  4  8    19 32 41  CST
본고에서 주로 설명하는python 실행 시스템 명령 4가지 방법과 비교하면 더 많은python 실행 시스템 명령에 대한 방법은 아래의 링크를 보십시오

좋은 웹페이지 즐겨찾기