javaWeb開發,經常線上線下切換,操作有點小麻煩,咂摸着就搞了個腳本。
先用easy_install安裝pywin32和wmi(wmi依賴win32api)
參考別人的代碼修改
#!/usr/bin/python2.7 # -*- coding: gb2312 -*- ''' Created on 2013-10-11 @author: Daemon ''' import sys import wmi def developModel():#開發模式,切換DNS wmiService = wmi.WMI () colNicConfigs = wmiService.Win32_NetworkAdapterConfiguration(IPEnabled = True) if len(colNicConfigs) < 1: print "沒有找到可用的網絡適配器" exit() objNicConfig=colNicConfigs[0] arrDNSServers = ['192.168.1.1'] returnValue =objNicConfig.SetDNSServerSearchOrder(DNSServerSearchOrder = arrDNSServers) if returnValue[0] == 0 : print "修改DNS成功" elif returnValue[0] == 1 : print "修改DNS成功" else: print "修改DNS失敗" def nonDevelopModel():#線上,自動獲取DNS wmiService = wmi.WMI () colNicConfigs = wmiService.Win32_NetworkAdapterConfiguration(IPEnabled = True) if len(colNicConfigs) < 1: print "沒有找到可用的網絡適配器" exit() objNicConfig=colNicConfigs[0] returnValue =objNicConfig.SetDNSServerSearchOrder()#這句不能少 returnValue =objNicConfig.EnableDHCP() if returnValue[0] == 0 : print "修改DNS成功" elif returnValue[0] == 1 : print "修改DNS成功" else: print returnValue[0] print "修改DNS失敗" fh=open("C:\Windows\System32\drivers\etc\hosts","rb")#修改我的hosts里配置 lines=[] flag=0 for i in fh.readlines(): if i.find("#127.0.0.1")==0:#我的配置文件只有一個#127.0.0.1 www.XXXX.com 項目域名(當有多個時,此處會出bug) flag=1 lines.append(i[1:])#去掉127前的#號 elif i.find("127.0.0.1")==0: lines.append("#"+i) flag=0 else: lines.append(i) open("C:\Windows\System32\drivers\etc\hosts","wb").writelines(lines) if flag==0: print "非開發模式" nonDevelopModel() else: print "開發模式" developModel() raw_input()
最后轉為exe :pyinstaller -F xxx.py;搞定收工。