python中shell的調用
python中shell的調用
我們在執行一些簡單的腳本語言時,python簡潔的優勢就展現出來了。但是也有一些多層任務的疊加,就需要我們借用shell來完成了。本篇整理了兩種shell調用的方法:system和popen(),這兩個函數也是在執行命令時會調用到的。下面我們就這兩種方法展開詳細的講解。
1.os.system
直接在終端輸出執行結果,返回執行狀態0或者1。
此函數會啟動子進程,在子進程中執行command,并返回command命令執行完畢后的退出狀態,如果command有執行內容,會在標準輸出顯示。這實際上是使用C標準庫函數system()實現的;
缺點:這個函數在執行command命令時需要重新打開一個終端,并且無法保存command命令的執行結果;
實例
importos
os.system('cd/')
2.os.popen()
打開一個與command進程之間的管道;這個函數的返回值是一個文件對象,可以讀或者寫(由mode決定,mode默認是‘r’)。如果mode為’r’,可以使用此函數的返回值調用read()來獲取command命令的執行結果。
os.system(cmd)或者os.popen(cmd),前者返回值是腳本的退出狀態碼,后者的返回值是腳本執行過程中的輸出內容。實際是使用時視情況而選擇;
實例
subprocess.Popen(args,bufsize=0,executable=None,stdin=None,stdout=None,
stderr=None,preexec_fn=None,close_fds=False,shell=False,cwd=None,env=None,
universal_newlines=False,startupinfo=None,creationflags=0)
以上就是python中shell的調用,可以說兩種方法各有利弊,大家在使用時可以根據自己的需要來選擇。有關調用shell的方法還有很多,大家可以在課外了解一下。更多Python學習教程請關注IT培訓機構:千鋒教育。

猜你喜歡LIKE
相關推薦HOT
更多>>
python中的filter函數功能是什么?
python中的filter函數功能是什么?在python中,面對眾多的數據,我們要過濾篩選出我們需要的數據。python中的filter函數就是起到了過濾篩選的作...詳情>>
2023-11-10 20:37:27
pythontime模塊是什么
pythontime模塊是什么在python中使用時間,就免不了和time模塊打交道,另外兩個模塊這個暫時先不做介紹。做time模塊的使用上,我們可以用它來對...詳情>>
2023-11-10 15:53:16
python是什么編程語言
python是什么編程語言1、說明是一種面向對象、解釋型計算機程序設計語言,由GuidovanRossum于1989年底發明,第一個公開發行版發行于1991年。Pyt...詳情>>
2023-11-10 15:21:05
python異常處理的兩種技巧
python異常處理的兩種技巧1、傳遞異常有時我們會在捕捉到一個異常后重新引發它(傳遞異常),實現起來很簡單,使用不帶參數的raise語句即可。deff...詳情>>
2023-11-10 14:49:39熱門推薦
python中的filter函數功能是什么?
沸python delattr函數如何使用?
熱python中pdb模塊怎么用?
熱Python如何截圖保存?
新python?中缺少module怎么辦?
python strftime和strptime的不同分析
python time.strptime的格式化
python中@contextmanager是什么?
python對象的三要素是什么
pythonGIL在Python多線程的應用
python如何對多個CSV文件進行讀取
pythonif嵌套命令如何理解?
python對列表進行永久性或臨時排序的方法
python生成器調用方法引發異常
技術干貨






