前往: 導覽, 搜尋

Python 執行 dos 下面的命令並且可以把結果收回來

114029224_l.jpg
哇哈哈哈~~
這一張圖是放在 xuit 上面的,這樣的話有個好處就是可以不用使用這裡的空間,
因為這裡的空間比較珍貴的說 ^.^ 可是會多出他的icon ... 有一好沒兩好
講到這裡,要開始主題了,如果今天我知道有一個命令可以拿到電腦上面的ip
這命令叫做

ipconfig /all <- enter
 
C:\>ipconfig /all
 
Windows IP Configuration
 
   Host Name . . . . . . . . . . . . : PC00125-RD
   Primary Dns Suffix  . . . . . . . :
   Node Type . . . . . . . . . . . . : Unknown
   IP Routing Enabled. . . . . . . . : No
   WINS Proxy Enabled. . . . . . . . : No
 
Ethernet adapter VMware Network Adapter VMnet8:
 
   Connection-specific DNS Suffix  . :
   Description . . . . . . . . . . . : VMware Virtual Ethernet Adapter for VMnet8
   Physical Address. . . . . . . . . : 00-50-56-C0-00-08
   DHCP Enabled. . . . . . . . . . . : No
   IP Address. . . . . . . . . . . . : 192.168.163.1
   Subnet Mask . . . . . . . . . . . : 255.255.255.0
   Default Gateway . . . . . . . . . :
 
Ethernet adapter VMware Network Adapter VMnet1:
 
   Connection-specific DNS Suffix  . :
   Description . . . . . . . . . . . : VMware Virtual Ethernet Adapter for VMnet1
   Physical Address. . . . . . . . . : 00-50-56-C0-00-01
   DHCP Enabled. . . . . . . . . . . : No
   IP Address. . . . . . . . . . . . : 192.168.248.1
   Subnet Mask . . . . . . . . . . . : 255.255.255.0
   Default Gateway . . . . . . . . . :
 
Ethernet adapter 區域連線:
 
   Connection-specific DNS Suffix  . :
   Description . . . . . . . . . . . : Intel(R) 82566DM-2 Gigabit Network Connection
   Physical Address. . . . . . . . . : 00-1E-90-21-10-67
   DHCP Enabled. . . . . . . . . . . : No
   IP Address. . . . . . . . . . . . : 192.168.120.66
   Subnet Mask . . . . . . . . . . . : 255.255.255.0
   Default Gateway . . . . . . . . . : 192.168.120.254
   DNS Servers . . . . . . . . . . . : 168.95.1.1
 
C:\>

他會把你電腦上面所有網卡的情報都搞出,如果今天想要使用Python 拿到類似的情報,
例如要拿取本機的 MAC address 或是 IP,搞了很久都沒有辦法拿到上述情報,可是你知道
使用Dos 的命令是瞬間秒殺的事情。
如果這時候有命令可以執行 Ipconfig /all 並且將他吐出來的字串拿回來,我就可以做字串處理
將我要的情報搞出來。這該有多好阿。
將 ! 將 !, 番了一些文件發現有這東東可以使用

import os
 
x = os.popen("ipconfig /all").read()
 
print x


這樣的話就可以拿到 Ipconfig 吐出來的情報摟