Python呼叫命令列的幾種方法

2021-07-25 11:55:08 字數 1112 閱讀 6826

接收字串形式的系統命令並執行它。

當執行命令時,python的執行是掛起的。當我們執行完成之後,將會以system()的返回值形式給出退出狀態,python的執行就會繼續。退出狀態,0表示成功,非0表示其他型別的錯誤。

所以,這個函式是無法直接獲取輸出的。

它的工作方式和os.system()是一樣的,但是它會返回乙個類檔案物件。通過read()可以讀取命令產生的結果。

用法、結果和os.system()完全一樣

該函式使用取代os.popen(),但建立popen()例項的語法比呼叫os.popen()更複雜一些。

>>> f = popen('arp -a',stdin = pipe, stdout = pipe)

>>> f.stdout.read()    # 獲取輸出,如果命令需要一定時間才能執行完,那麼會執行完後再獲取輸出

'\r\n\xbd\xd3\xbf\xda: 192.168.1.103 --- 0x9\r\n  internet \xb5\xd8\xd6\xb7         \xce\xef\xc0\xed\xb5\xd8\xd6\xb7              \xc0\xe0\xd0\xcd\r\n  192.168.1.1           50-bd-5f-ec-2b-f8     \xb6\xaf\xcc\xac        \r\n  192.168.1.100         c8-0e-77-7c-e9-9a     \xb6\xaf\xcc\xac        \r\n  224.0.0.22            01-00-5e-00-00-16     \xbe\xb2\xcc\xac        \r\n  224.0.0.252           01-00-5e-00-00-fc     \xbe\xb2\xcc\xac        \r\n  224.0.0.253           01-00-5e-00-00-fd     \xbe\xb2\xcc\xac        \r\n  239.255.255.250       01-00-5e-7f-ff-fa     \xbe\xb2\xcc\xac        \r\n  255.255.255.255       ff-ff-ff-ff-ff-ff     \xbe\xb2\xcc\xac        \r\n'

Python 中呼叫命令列命令

今天在使用python時,發現需要直接呼叫系統中已經安裝好的程式,查了一些資料,在這裡稍微做一點總結與大家分享,如有不合適的地方,請大家批評指正。在python中,我們常常需要呼叫外部程式,在python的文件中,對各種呼叫方式做了說明,主要有以下幾種 os.system os.spawn os.p...

C 呼叫命令列

開關 c表示執行完命令就退出 system.diagnostics.process cmd system.diagnostics.process.start cmd.exe c xcopy c test1 c test2 y q s cmd.waitforexit system.diagnostic...

C 呼叫命令列

開關 c表示執行完命令就退出 system.diagnostics.process cmd system.diagnostics.process.start cmd.exe c xcopy c test1 c test2 y q s cmd.waitforexit system.diagnostic...