python執行cmd命令


我們在做手機端自動化的時候有時候可能會遇到需要執行cmd命令完成用例,我們一起學習下,通過python腳本執行cmd命令

cmd是什么

cmd是command的縮寫.即命令提示行(CMD),是在OS / 2 , Win為基礎的操作系統(包括Windows 2000和XP中, Vista中,和Server 2003 )下的“MS-DOS 方式”。中文版Windows XP 中的命令提示符進一步提高了與DOS 下操作命令的兼容性,用戶可以在命令提示符直接輸入中文調用文件  ----來自百度百科

其實說白了就是windows中執行一些命令的地方。

python操作cmd

我們通常可以使用os模塊的命令進行執行cmd

方法1:

os.stsrem(執行的命令)
# 源碼
def system(*args, **kwargs): # real signature unknown
    """ Execute the command in a subshell. """
    pass

 我們可以看到os.system成功的把我們輸入的內容給返回回來了,其中代碼0 表示執行成功。但是我們沒有辦法獲取輸出的信息內容

方法2:

復制代碼
os.popen(執行的命令)

# 源碼
def popen(cmd, mode="r", buffering=-1):
    if not isinstance(cmd, str):
        raise TypeError("invalid cmd type (%s, expected string)" % type(cmd))
    if mode not in ("r", "w"):
        raise ValueError("invalid mode %r" % mode)
    if buffering == 0 or buffering is None:
        raise ValueError("popen() does not support unbuffered streams")
    import subprocess, io
    if mode == "r":
        proc = subprocess.Popen(cmd,
                                shell=True,
                                stdout=subprocess.PIPE,
                                bufsize=buffering)
        return _wrap_close(io.TextIOWrapper(proc.stdout), proc)
    else:
        proc = subprocess.Popen(cmd,
                                shell=True,
                                stdin=subprocess.PIPE,
                                bufsize=buffering)
        return _wrap_close(io.TextIOWrapper(proc.stdin), proc)
復制代碼

可以發現輸出后的內容是一個對象,默認是以讀的方式打開

我們可以通過讀取文件對象,獲取返回的信息內容

 

 

我們可以在這里執行cmd的命令,獲取返回內容,進行對返回內容取出來,方便我們進行其他測試。取出返回信息參考appium---Android app資源監控

 

如果寫的對您有幫助,點個關注。持續更新中~~

 

 
分類:  python基礎
 
 
 
來源:
測試-安靜     https://www.cnblogs.com/qican/
 
 
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM