共計(jì) 952 個(gè)字符,預(yù)計(jì)需要花費(fèi) 3 分鐘才能閱讀完成。
在 Python 中,可以使用 subprocess
模塊來(lái)執(zhí)行 shell 腳本文件。
下面是一個(gè)示例代碼,演示了如何執(zhí)行一個(gè) shell 腳本文件:
import subprocess
# 定義 shell 腳本文件的路徑
script_path = '/path/to/script.sh'
# 執(zhí)行 shell 腳本文件
subprocess.call(['sh', script_path])
在 subprocess.call()
函數(shù)中,我們傳遞了一個(gè)包含 shell 命令的列表。列表的第一個(gè)元素是 sh
,表示使用 shell 執(zhí)行命令;第二個(gè)元素是腳本文件的路徑。subprocess.call()
函數(shù)會(huì)執(zhí)行 shell 腳本并等待腳本執(zhí)行完成。
你也可以使用 subprocess.run()
函數(shù)來(lái)執(zhí)行 shell 腳本文件,并獲取腳本的輸出、錯(cuò)誤信息等。下面是使用 subprocess.run()
函數(shù)執(zhí)行 shell 腳本文件的示例代碼:
import subprocess
# 定義 shell 腳本文件的路徑
script_path = '/path/to/script.sh'
# 執(zhí)行 shell 腳本文件,并獲取輸出、錯(cuò)誤信息等
result = subprocess.run(['sh', script_path], stdout=subprocess.PIPE, stderr=subprocess.PIPE, universal_newlines=True)
# 輸出腳本的輸出信息和錯(cuò)誤信息
print(' 輸出信息:', result.stdout)
print(' 錯(cuò)誤信息:', result.stderr)
在 subprocess.run()
函數(shù)中,我們使用 stdout=subprocess.PIPE
和stderr=subprocess.PIPE
參數(shù)來(lái)捕獲腳本的輸出和錯(cuò)誤信息。universal_newlines=True
參數(shù)指定以文本形式處理輸入和輸出。最后,我們通過(guò) result.stdout
和result.stderr
屬性獲取腳本的輸出和錯(cuò)誤信息,并將其打印出來(lái)。
請(qǐng)注意,執(zhí)行 shell 腳本文件需要操作系統(tǒng)支持并配置了相應(yīng)的環(huán)境。
丸趣 TV 網(wǎng) – 提供最優(yōu)質(zhì)的資源集合!