파이썬 CMD 결과 값 받는 방법



cmd 결과 값 받는 방법


파이썬에서 os.system 명렁의 결과를 받고 싶을 때가 있을 것이다.

아래는 2.x 기준으로 os.system 의 결과를 받는 방법을 알아 볼 것이다.

일단 예제 부터 보겠다.

아래의 예제를 실행 하면 디스크 사용량을 백분율로 나타낸 결과 값이 출력 될 것이다. 


#! /usr/bin/python

# -*- coding: utf-8 -*-


import os

import sys

import shutil

import commands

from datetime import datetime, timedelta


(exitstatus, outtext) = commands.getstatusoutput('df -k | grep /home/test | awk \'{print $5}\'')


print outtext


예제를 봤으니 중요한 부분 설명을 하도록 하겠다.

import commands  를 import해야 cmd 결과를 받아 올 수 있다.

os.system 대신 commands.getstatusoutput 사용하여 시스템 콜을 한다.

시스템 콜의 결과가 outtext에 담겨지고 해당 값을 출력하면 

unix에서 시스템 콜 한 명령 결과와 일치하게 출력 되는 것을 확인 할 수 있다.

exitstatus는 성공, 실패 값을 담는 것 같은데 해당 내용은 사용을 안하니 넘어가도록 하겠다.

간략하게 사용방법은 다음과 같다.


 import commands

 ([실행 성공 여부 변수],[시스템 콜 결과 받는 변수]) = commands.getstatusoutput( 시스템 콜 명령어 예를 들어 linux/unix 명령어 )


이상으로 파이썬에서 cmd 결과 값을 받는 방법에 대해 알아 보았습니다.

도움이 되셨나요?



반응형

'프로그램 > Python' 카테고리의 다른 글

[Python] 예외처리 try, finally, except pass  (0) 2016.11.28
[Python] 예외 처리, try, except, else  (0) 2016.11.26
[Python] 모듈 #2  (0) 2016.11.13
[Python] 모듈 #1  (0) 2016.11.12
[Python]클래스(3)  (0) 2016.11.02

+ Recent posts