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

你可能感兴趣的:(python)