python调用Windows的cmd命

发布时间:2019-09-06 08:59:50编辑:auto阅读(1714)

    关于python调用cmd命令:

    主要介绍两种方式:

    python的os模块

    os模块调用CMD命令有两种方式:os.popen()os.system() 都是用当前进程来调用。

    os.system是无法获取返回值的。当运行结束后接着往下面执行程序。

    用法如:os.system(“ipconfig”)

    import os
    
    os.system("ipconfig")
    
    执行结果如下:
    
    Windows IP 配置
    
    
    无线局域网适配器 无线网络连接:
    
       媒体状态  . . . . . . . . . . . . : 媒体已断开
       连接特定的 DNS 后缀 . . . . . . . : 
    
    以太网适配器 本地连接:
    
       连接特定的 DNS 后缀 . . . . . . . : 
       本地链接 IPv6 地址. . . . . . . . : fe80::e1c4:78dd:65a8:7bac%13
       IPv4 地址 . . . . . . . . . . . . : 192.168.180.102
       子网掩码  . . . . . . . . . . . . : 255.255.255.0
       默认网关. . . . . . . . . . . . . : 192.168.180.1

    OS.popen带返回值的,如何获取返回值。

    如下:

      p = os.popen(cmd)

    print p.read()   #得到的是个字符串。

    import os
    
    d = os.popen("ipconfig")
    print(d.read())
    
    执行结果如下:
    
    Windows IP 配置
    
    
    无线局域网适配器 无线网络连接:
    
       媒体状态  . . . . . . . . . . . . : 媒体已断开
       连接特定的 DNS 后缀 . . . . . . . : 
    
    以太网适配器 本地连接:
    
       连接特定的 DNS 后缀 . . . . . . . : 
       本地链接 IPv6 地址. . . . . . . . : fe80::e1c4:78dd:65a8:7bac%13
       IPv4 地址 . . . . . . . . . . . . : 192.168.180.102
       子网掩码  . . . . . . . . . . . . : 255.255.255.0
       默认网关. . . . . . . . . . . . . : 192.168.180.1

    这两个都是用当前进程来调用,也就是说它们都是阻塞式的。

关键字