【Python】进程管理之 subprocess

非常强大的子进程管理模块,你想要的它都有。 环境:Windows 10 上一篇文章讲的 Pexpect,功能是不错,但它有的 Subprocess 都能做到,且更加完美。 一个好的子进程管理需要满足什么功能需求? 无阻塞 / 阻塞 标准输入 / 输出 信号发送 / kill 其实也不多。 开始 import subprocess proc = subprocess.Popen('ping 127.0.0.1', shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT, stdin=subprocess.PIPE) print(proc.stdout.read().decode('gbk')) # 因为是 windows 系统,默认编码是 ‘gbk’ 正在 Ping 127.0.0.1 具有 32 字节的数据: 来自 127.0.0.1 的回复: 字节=32 时间<1ms TTL=128 来自 127.0.0.1 的回复: 字节=32 时间<1ms TTL=128 来自 127.0.0.1 的回复: 字节=32 时间<1ms TTL=128 来自 127.0.0.1 的回复: 字节=32 时间<1ms TTL=128 127.0.0.1 的 Ping 统计信息: 数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失), 往返行程的估计时间(以毫秒为单位): 最短 = 0ms,最长 = 0ms,平均 = 0ms subprocess 主要有两个运行命令的方法: ...

八月 7, 2021  |  786 字  |  总阅读