python運(yùn)行cmd命令行的3種方法總結(jié)
1.執(zhí)行cmd命令,不顯示執(zhí)行過程中彈出的黑框
def run_cmd( cmd_str='', echo_print=1):
"""
執(zhí)行cmd命令,不顯示執(zhí)行過程中彈出的黑框
備注:subprocess.run()函數(shù)會將本來打印到cmd上的內(nèi)容打印到python執(zhí)行界面上,所以避免了出現(xiàn)cmd彈出框的問題
:param cmd_str: 執(zhí)行的cmd命令
:return:
"""
from subprocess import run
if echo_print == 1:
print('\n執(zhí)行cmd指令="{}"'.format(cmd_str))
run(cmd_str, shell=True)2.執(zhí)行cmd命令,并得到執(zhí)行后的返回值,python調(diào)試界面輸出返回值
def run_cmd_Popen_fileno(cmd_string):
"""
執(zhí)行cmd命令,并得到執(zhí)行后的返回值,python調(diào)試界面輸出返回值
:param cmd_string: cmd命令,如:'adb devices'
:return:
"""
import subprocess
print('運(yùn)行cmd指令:{}'.format(cmd_string))
return subprocess.Popen(cmd_string, shell=True, stdout=None, stderr=None).wait()3.執(zhí)行cmd命令,并得到執(zhí)行后的返回值,python調(diào)試界面不輸出返回值
def run_cmd_Popen_PIPE(cmd_string):
"""
執(zhí)行cmd命令,并得到執(zhí)行后的返回值,python調(diào)試界面不輸出返回值
:param cmd_string: cmd命令,如:'adb devices"'
:return:
"""
import subprocess
print('運(yùn)行cmd指令:{}'.format(cmd_string))
return subprocess.Popen(cmd_string, shell=True, stdin=subprocess.PIPE, stdout=subprocess.PIPE, stderr=subprocess.PIPE, encoding='gbk').communicate()[0]調(diào)用方法
if __name__ == '__main__':
run_cmd_run('adb devices')
run_cmd_Popen_fileno('adb devices')
run_cmd_Popen_PIPE('adb devices')執(zhí)行結(jié)果
執(zhí)行cmd指令="adb devices"
List of devices attached
3356caad device運(yùn)行cmd指令:adb devices
List of devices attached
3356caad device運(yùn)行cmd指令:adb devices
補(bǔ)充:python調(diào)用cmd進(jìn)行輸入輸出
由于程序需要用java和python混用,所以可以取巧,就是在python中調(diào)用cmd,在cmd中執(zhí)行java
所以,進(jìn)行了一下測試。完美運(yùn)行
import os
with open("text1.txt","w",encoding="utf8") as file1:
? ? mystr = os.popen("ipconfig") ?# popen與system可以執(zhí)行指令,popen可以接受返回對象
? ? mystr = mystr.read() ?# 讀取輸出
? ? file1.write(mystr) ? ? #寫入文件總結(jié)
到此這篇關(guān)于python運(yùn)行cmd命令行的3種方法的文章就介紹到這了,更多相關(guān)python運(yùn)行cmd命令行內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
python爬蟲 貓眼電影和電影天堂數(shù)據(jù)csv和mysql存儲過程解析
這篇文章主要介紹了python爬蟲 貓眼電影和電影天堂數(shù)據(jù)csv和mysql存儲過程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2019-09-09
PyTorch如何利用parameters()獲取模型參數(shù)
這篇文章主要介紹了PyTorch如何利用parameters()獲取模型參數(shù)問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-09-09
詳解python opencv、scikit-image和PIL圖像處理庫比較
這篇文章主要介紹了詳解python opencv、scikit-image和PIL圖像處理庫比較,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12
Python實現(xiàn)創(chuàng)建模塊的方法詳解
導(dǎo)入一個模塊,我們一般都會使用?import?關(guān)鍵字,但有些場景下?import?難以滿足我們的需要。所以除了?import?之外還有很多其它導(dǎo)入模塊的方式,下面就來介紹一下2022-07-07
Flask使用SQLAlchemy實現(xiàn)持久化數(shù)據(jù)
本文主要介紹了Flask使用SQLAlchemy實現(xiàn)持久化數(shù)據(jù),文中通過示例代碼介紹的非常詳細(xì),需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-07-07
跟老齊學(xué)Python之關(guān)于循環(huán)的小伎倆
不管是while還是for,所發(fā)起的循環(huán),在python編程中是經(jīng)常被用到的。特別是for,一般認(rèn)為,它要比while快,而且也容易寫(是否容易,可能因人而異,但是,執(zhí)行時間快,是的確的),因此在實踐中,for用的比較多點。2014-10-10
如何用Python實現(xiàn)簡單的Markdown轉(zhuǎn)換器
這篇文章主要介紹了如何用Python實現(xiàn)簡單的Markdown轉(zhuǎn)換器,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-07-07

