1. 程式人生 > >python 執行shell命令並將結果儲存

python 執行shell命令並將結果儲存

方法1: 將shell執行的結果儲存到字串

def run_cmd(cmd):
    result_str=''
    process = subprocess.Popen(cmd, shell=True,
              stdout=subprocess.PIPE, stderr=subprocess.PIPE)
    result_f = process.stdout
    error_f = process.stderr
    errors = error_f.read()
    if errors: pass
    result_str = result_f.read().strip()
    if result_f:
       result_f.close()
    if error_f:
       error_f.close()
    return result_str

方法2: 將shell執行的結果寫入到指定檔案

def run_cmd2file(cmd):
    fdout = open("file_out.log",'a')
    fderr = open("file_err.log",'a')
    p = subprocess.Popen(cmd, stdout=fdout, stderr=fderr, shell=True)
    if p.poll():
       return
    p.wait()
    return