python调用Windows的cmd命

2023-01-31 05:01:27 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

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

相关文章