如何使用Python執行系統命令?Python學習教程!
Python是一門非常不錯的程式語言,語法清晰、功能強大、內建豐富的庫,那麼你知道如何使用Python執行系統命令嗎?我們來看看詳細的方法吧。
1. os.system()
這個方法直接呼叫標準C的system()函式,僅僅在一個子終端執行系統命令,而不能獲取執行返回的資訊。
>>> import os
>>> output = os.system('cat /proc/cpuinfo')
processor : 0
vendor_id : AuthenticAMD
cpu family : 21
... ...
>>> output # doesn't capture output
0
2. os.popen()
這個方法執行命令並返回執行後的資訊物件,是透過一個管道檔案將結果返回。
>>> output = os.popen('cat /proc/cpuinfo')
>>> output
>>> print output.read()
processor : 0
vendor_id : AuthenticAMD
cpu family : 21
... ...
>>>
3. commands模組
>>> import commands
>>> (status, output) = commands.getstatusoutput('cat /proc/cpuinfo')
>>> print output
processor : 0
vendor_id : AuthenticAMD
cpu family : 21
... ...
>>> print status
0
注意1:在類unix的系統下使用此方法返回的返回值(status)與指令碼或命令執行之後的返回值不等,這是因為呼叫了os.wait()的緣故,具體原因就得去了解下系統wait()的實現了。需要正確的返回值(status),只需要對返回值進行右移8位操作就可以了。
注意2:當執行命令的引數或者返回中包含了中文文字,那麼建議使用subprocess。
4. subprocess模組
該模組是一個功能強大的子程式管理模組,是替換os.system, os.spawn*等方法的一個模組。
>>> import subprocess
>>> subprocess.Popen(["ls", "-l"]) # python2.x doesn't capture output
>>> subprocess.run(["ls", "-l"]) # python3.x doesn't capture output
>>> total 68
drwxrwxr-x 3 xl xl 4096 Feb 8 05:00 com
drwxr-xr-x 2 xl xl 4096 Jan 21 02:58 Desktop
drwxr-xr-x 2 xl xl 4096 Jan 21 02:58 Documents
drwxr-xr-x 2 xl xl 4096 Jan 21 07:44 Downloads
... ...
>>>
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69952527/viewspace-2751660/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Python-呼叫執行系統命令Python
- Python 執行 Linux 作業系統命令PythonLinux作業系統
- Python源程式執行方式有哪些?Python學習教程Python
- python執行系統命令四種方法比較Python
- 如何使用Python實現FTP伺服器?Python學習教程PythonFTP伺服器
- shell指令碼命令 執行python檔案&python命令列執行python程式碼指令碼Python命令列
- python之多執行緒(學習)Python執行緒
- Python學習筆記|Python之執行緒Python筆記執行緒
- Python中執行系統命令常見的幾種方法Python
- Python私有變數如何定義?Python學習教程!Python變數
- 如何免費雲端執行Python深度學習框架?Python深度學習框架
- python中使用subprocess批量執行linux下命令PythonLinux
- python中使用subprocess批次執行linux下命令PythonLinux
- 【機器學習】使用Octave執行命令機器學習
- Python基礎教程該如何學習?Python
- Python學習筆記 - 多執行緒Python筆記執行緒
- Python學習之程式和執行緒Python執行緒
- 如何在免費雲端執行 Python 深度學習框架?Python深度學習框架
- python裡執行shell命令或cmd命令Python
- 學習python多久?該如何學習python?Python
- Win10系統下如何使用Windows PowerShell執行ABD命令Win10Windows
- 如何系統地自學 Python?Python
- 【Linux學習教程】Linux中Sed命令如何使用?Linux
- python學習命令總結Python
- python 多程式和多執行緒學習Python執行緒
- 如何用Python呼叫系統命令呢?常用方法!Python
- 什麼是Python執行緒?Python執行緒如何建立?Python執行緒
- python實現批次執行命令列Python命令列
- 如何高效的學習python?python學習技巧Python
- 跨行業如何學習好python?Python學習!行業Python
- Python如何快速學習?Python學習方法技巧!Python
- Python教程學習:初識Python-01Python
- Python系統程式設計之執行緒Python程式設計執行緒
- python如何實現簡單的爬蟲功能?Python學習教程!Python爬蟲
- 學Python需要學資料庫嗎?Python學習教程!Python資料庫
- JVM學習(五) -執行子系統JVM
- 如何用 pipenv 克隆 Python 教程程式碼執行環境?Python
- 如何安裝Python執行環境Anaconda?(視訊教程)Python