subprocess.run()函数的功能是运行命令并返回一个CompletedProcess` 实例。
返回的实例将具有 args、returncode、stdout 和 stderr 属性。默认情况下,stdout 和 stderr 不被捕获,这些属性将为 None。要捕获它们,请传递 stdout=PIPE 和/或 stderr=PIPE,或者传递 capture_output=True 以同时捕获两者。
如果 check 为 True 并且退出代码非零,则它会引发 CalledProcessError。CalledProcessError 对象将在 returncode 属性中包含退出代码,以及输出和 stderr 属性(如果捕获了这些流)。
如果给定了 timeout,并且进程花费的时间太长,则会引发 TimeoutExpired 异常。
有一个可选参数 "input",允许您将字节或字符串传递给子进程的 stdin。如果您使用此参数,则不能同时使用 Popen 构造函数的 "stdin" 参数,因为它将在内部使用。
默认情况下,所有通信都是以字节为单位的,因此任何 "input" 都应该是字节,stdout 和 stderr 都应该是字节。如果处于文本模式,任何 "input" 都应该是一个字符串,stdout 和 stderr 将根据区域设置编码或通过设置 "encoding" 进行解码的字符串。文本模式可以通过设置 text、encoding、errors 或 universal_newlines 中的任何一个来触发。
推薦hahow線上學習python: https://igrape.net/30afN