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

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

subprocess.run()函数的功能是运行命令并返回一个CompletedProcess` 实例。

返回的实例将具有 argsreturncodestdoutstderr 属性。默认情况下,stdoutstderr 不被捕获,这些属性将为 None。要捕获它们,请传递 stdout=PIPE 和/或 stderr=PIPE,或者传递 capture_output=True 以同时捕获两者。

如果 checkTrue 并且退出代码非零,则它会引发 CalledProcessErrorCalledProcessError 对象将在 returncode 属性中包含退出代码,以及输出和 stderr 属性(如果捕获了这些流)。

如果给定了 timeout,并且进程花费的时间太长,则会引发 TimeoutExpired 异常。

有一个可选参数 "input",允许您将字节或字符串传递给子进程的 stdin。如果您使用此参数,则不能同时使用 Popen 构造函数的 "stdin" 参数,因为它将在内部使用。

默认情况下,所有通信都是以字节为单位的,因此任何 "input" 都应该是字节,stdoutstderr 都应该是字节。如果处于文本模式,任何 "input" 都应该是一个字符串,stdoutstderr 将根据区域设置编码或通过设置 "encoding" 进行解码的字符串。文本模式可以通过设置 textencodingerrorsuniversal_newlines 中的任何一个来触发。

參考資料

推薦hahow線上學習python: https://igrape.net/30afN

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

儲蓄保險王

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

You may also like...

發佈留言

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