以編程方式執行shell 命令並將其輸出捕獲為字符串的任務可以在Python 的subprocess 模組的幫助下完成。
對於最簡單的在官方維護的Python 版本中,使用check_output 函數:
在Python 3.5中,run 函數提供了更靈活和現代的方法:
用於擴充相容性和進階功能,使用低階 Popen 建構函數。透過通信,您可以捕獲輸出並傳遞輸入:
Shell 命令執行(shell=True Argument)
默認,函數執行單一程式。若要執行複雜的 shell 指令,請設定 shell=True。但是,這會引發安全問題。
輸入處理
要透過 stdin 傳遞輸入,請在 run 或 Popen 中指定輸入關鍵字參數。
錯誤處理
為了正確處理錯誤,請將 check_output 與stdout=subprocess.STDOUT 或使用 stderr=subprocess.STDOUT 進行 Popen。或者,檢查子進程返回碼。
以上是如何在 Python 中運行 Shell 命令並捕獲其輸出?的詳細內容。更多資訊請關注PHP中文網其他相關文章!