zoukankan      html  css  js  c++  java
  • Python之os.popen和os.system

    废话连篇

    为了搞个多测试机并行运行也是花了时间研究了下,要使用macaca将多个设备运行起来,当然是需要用设备ID号,服务端口号等等,此处将简单介绍一下关于如何获取设备号。

    简单介绍

    这里使用os.popen来获取设备号,使用os.system来启动macaca服务(有时间了将macaca的一些经历写写吧)。

    两者的区别是:

    (1)os.system(cmd)的返回值只会有0(成功),1,2

    (2)os.popen(cmd)会把执行的cmd的输出作为值返回。

    实际操作

    以获取设备号的操作为例。

    代码如下:

    #!/usr/bin/env python

    # -*- coding: utf-8 -*-

    # @Time    : 2018/5/20 18:20

    # @Author  : --------

    # @Site    :

    # @File    : adb.py

    # @Software: PyCharm

    import os

    #获取连接设备

    GET_ANDROID = "adb devices"

    # 使用popen

    value_popen = os.popen(GET_ANDROID)

    s_v = value_popen.readlines()

    print('popem:',s_v)

    print('---------------我是分界线----------------')

    # 使用system

    value_system = os.system(GET_ANDROID)

    print('system:',value_system)

    运行结果如下:

    popen:

     
    popen

    此方法可以使用read、readline、readlines方法进行内容操作。

    代码如下:

    #!/usr/bin/env python

    # -*- coding: utf-8 -*-

    # @Time    : 2018/5/20 18:20

    # @Author  : -----

    # @Site    :

    # @File    : adb.py

    # @Software: PyCharm

    import os

    #获取连接设备

    GET_ANDROID = "adb devices"

    # 使用popen

    value = os.popen(GET_ANDROID)

    s_v = value.readlines()

    for v in s_v:

        s_value = str(v).replace(" ", "").replace(" ", "")

        if s_value.rfind('device') != -1 and (not s_value.startswith("List")) and s_value != "":

            s_vv = s_value[:s_value.find('device')].strip()

            print(s_vv)

    print('---------------我是分界线----------------')

    # 使用system

    # value_system = os.system(GET_ANDROID)

    # print('system:',value_system)

     
    进行内容操作

    很方便可以将device ID分离出来。

    system:

     
    system

    此方法只是返回一个code值,可操作性比较低。

  • 相关阅读:
    基于Angular和Spring WebFlux做个小Demo
    一个数据源demo
    我需要一个什么样子的动态数据源模块
    JavaScript对象类型之创建对象
    JavaScript对象类型之简单介绍
    C# 调用者信息获取
    我的收藏之数据库优化
    Linq标准查询操作符
    Nunit测试工具使用实例
    搜索引擎中的搜索技巧
  • 原文地址:https://www.cnblogs.com/April-Chou-HelloWorld/p/9071797.html
Copyright © 2011-2022 走看看