Languages/Python

[Python] subprocess 란?

MOONCO 2022. 12. 30. 22:35

subprocess 란?

프로그램 실행을 관리하는 모듈

 

subprocess 사용방식

import subprocess

# 실행 프로세스 가져오기
output = subprocess.check_output("tasklist")

# 우리가 알아볼 수 있게 디코딩
data = output.decode('cp949')

# 줄바꿈문자를 기준으로 나눔
lines = data.splitlines()

# 프로세스 리스트 출력
for line in lines:
    print(line)
    
# 프로그램 실행
cmd = "명령어"
subprocess.run(cmd, shell=True)

# 프로그램 출력값 받아오기
result = subprocess.run(cmd, capture_output=True, shell=True, encoding='utf-8')
print(result.stdout)

# 프로그램 출력값 실시간으로 받아오기 ( 한 라인 씩 )
process = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE, encoding='utf-8')
while True:
    output = process.stdout.readline()
    if output == '' and process.poll() is not None:
        break
    if output:
        print(output.strip())

 

 

반응형