python执行shell实时输出,并返回code

Posted chenqionghe

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python执行shell实时输出,并返回code相关的知识,希望对你有一定的参考价值。

import subprocess


def run_shell(shell):
    cmd = subprocess.Popen(shell, stdin=subprocess.PIPE, stderr=subprocess.PIPE,
                           stdout=subprocess.PIPE, universal_newlines=True, shell=True, bufsize=1)
    # 实时输出
    while True:
        line = cmd.stdout.readline()
        print(line, end='')
        if subprocess.Popen.poll(cmd) == 0:  # 判断子进程是否结束
            break

    return cmd.returncode


if __name__ == '__main__':
    print(run_shell("ping www.baidu.com"))

以上是关于python执行shell实时输出,并返回code的主要内容,如果未能解决你的问题,请参考以下文章

Python执行 shell 命令并实时打印输出

Python执行 SQL 命令并实时打印输出

Python执行 SQL 命令并实时打印输出

python原样输出linux信息

Python通过Python执行Shell指令SQL语句

Python通过Python执行Shell指令SQL语句