自动切换路由的批处理文件

背景:

  公司上网需要设置代理,家里不需要

      由于开启了vmware的vmnet8网卡,路由需要自己手工配置,否则网页访问请求总是会被发的vmnet8的网卡

问题:

      每天这样切换来切换去,甚是烦人...

解决思路:

      以前自己也有了解过bat处理,便想通过批处理的方式进行实现。网上查阅了了一些资料,确定方案可行后即可动手。

      关键命令:

      1.路由配置

      route  用于配置机器的路由表,具体用法,命令行下 route /?即可

      eg:

      /*添加默认路由*/

      route add 0.0.0.0 mask 0.0.0.0 192.168.189.1 if 3 metric 1 2>nul

      2.IE代理配置

      reg IE的代理配置实际上通过操作注册表实现的。reg命令即用于进行注册表相关操作

  eg:

  /*允许代理*/
  reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyEnable /t REG_DWORD /d 1 /f 1>nul

完整源码:

     

 1 @echo off
 2 
 3 REM 定义开始标签
 4 
 5 :start
 6 cls
 7 REM @echo .
 8 REM @echo "切换路由" 
 9 REM @echo "1.公司路由  2.住处路由"
10 REM set /p choice=请选择:
11 REM if /i "%choice%"=="1" goto company
12 REM if /i "%choice%"=="2" (goto home) else (goto start)
13 REM 通过时间及星期智能判断
14 REM for /f "delims=:" %%i in ('time /t') do set T="%%i"
15 REM echo 当前时间%T%点
16 REM if %T% GTR "08" (if %T% LSS "17" (goto company) else goto home) else goto home
17 
18 REM 通过时间及星期智能判断
19 for /f "tokens=1,2* " %%i in ('date /t') do set myday="%%j"
20 set /a isWorkDay=1
21 if %myday% EQU "星期六" (
22     set /a isWorkDay=0
23 )
24 
25 if %myday% EQU "星期天" (
26     set /a isWorkDay=0
27 )
28 
29 for /f "delims=:" %%i in ('time /t') do set myTime="%%i"
30 echo 当前时间%myTime%点
31 if %myTime% GTR "08" (if %myTime% LSS "17" (set /a myPlace=1 ) else set /a myPlace=0 ) else set /a myPlace=0
32 
33 if %isWorkDay% EQU 1 (
34     if %myPlace% EQU 1 (
35         echo 今天是%myday%,属于工作日,工作时间
36         goto company
37     )
38 ) else (
39     echo 现在是我的业余时间
40     goto home
41 )
42 
43 :company 
44 echo "正在进行公司路由配置..."
45 route delete 0.0.0.0 2>nul
46 route add 0.0.0.0 mask 0.0.0.0 192.168.189.1 if 3 metric 1 2>nul
47 echo "正在进行公司代理配置..."
48 REM 允许代理
49 reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyEnable /t REG_DWORD /d 1 /f 1>nul 
50 REM 设置代理地址
51 reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyServer /d "192.168.60.71:80" /f 1>nul 
52 REM 设置忽略地址
53 reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyOverride /t REG_SZ /d "192.*;" /f 1>nul 
54 
55 goto end
56 
57 :home
58 echo "正在进行住处路由配置..."
59 route delete 0.0.0.0 2>nul
60 route add 0.0.0.0 mask 0.0.0.0 192.168.1.1 if 4 metric 1 2>nul
61 
62 echo "正在进行住处代理配置..."
63 REM 允许代理
64 reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyEnable /t REG_DWORD /d 0 /f 1>nul 
65 
66 goto end
67 :end
68 pause
69 exit

 

现在只要每天开机后,点击下桌面的批量文件即可自动啦,生活又变得美好了那么一点.

(在方便一点,可以添加到开机启动任务里自动执行)

 

 

 

      

  

posted @ 2012-10-12 13:46  dumbdonkey  阅读(845)  评论(0编辑  收藏  举报