zoukankan      html  css  js  c++  java
  • 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/
     
     
     
  • 相关阅读:
    STM32 定时器用于外部脉冲计数
    幸福是怎么来的
    STM32 I/O的耐压问题,中断问题,以及如何在Keil (RVMDK) 中观察程序的执行时间
    STM32输入捕获简介
    STM32 直流减速电机控制
    2013 初始
    js 为字符串添加样式
    js 实现页面显示钟表
    JavaScript 入门总结
    ADO.NET基本数据库编程
  • 原文地址:https://www.cnblogs.com/rxxbb123/p/14234122.html
Copyright © 2011-2022 走看看