ca5
2/19/2014 - 1:20 AM

外部プロセスの呼び出し

外部プロセスの呼び出し

#!/bin/python
import subprocess
cmd = 'ps'
returncode = subprocess.call(cmd, shell=True) 
print returncode # 0

'''
subprocess.callは単にシェルを呼び出して実行するだけで、
プロセス内部に標準出力を取得することは出来ない
'''

proc = subprocess.Popen(['cat', fullfn], stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.STDOUT, close_fds=True)
stdout, stderr = proc.communicate()
print stdout, stderr
'''
標準出力, 標準エラーをプロセス内部で受けるならPopen
'''