Python: 如何使用 subprocess.run() 執行外部命令?

加入好友
加入社群
Python: 如何使用 subprocess.run() 執行外部命令? - 儲蓄保險王
Python: 如何使用 subprocess.run() 執行外部命令? - 儲蓄保險王

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

加入好友
加入社群
Python: 如何使用 subprocess.run() 執行外部命令? - 儲蓄保險王

儲蓄保險王

儲蓄險是板主最喜愛的儲蓄工具,最喜愛的投資理財工具則是ETF,最喜愛的省錢工具則是信用卡

You may also like...

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *