我写了一个更改特定路由的bat,是用在vpn拨号的情况下。vpn拨入后会分配一个10.10.10.0/24网段的某个ip地址,并且系统会自动把分配的ip地址设为默认路由的下一跳。我的bat的作用是自动找到那个默认路由然后,删除它,并添加一个特定的路由用分配的ip地址作为下一条路由。
内容如下:
================================================================
route print | find "0.0.0.0 0.0.0.0 10.10.10"> c:\routetable.txt
for /f "tokens=3" %%a in (c:\routetable.txt) do route delete 0.0.0.0 mask 0.0.0.0 %%a
for /f "tokens=3" %%a in (c:\routetable.txt) do route add 10.209.60.0 mask 255.255.255.0 %%a
del routetable.txt
echo. & pause
=======================================================================
这个bat必须在命令行模式下才能正常运行。如果直接在图形界面下双击bat文件,会抱错。
问题是route print | find "0.0.0.0 0.0.0.0 10.10.10"> c:\routetable.txt这句在运行的时候会报The process cannot access the file because it is being used by another process.的错误。请问这是什么问题?作者: HAT 时间: 2008-6-29 11:36 route print | find "0.0.0.0 0.0.0.0 10.10.10"> c:\routetable.txt
for /f "tokens=3" %%a in (c:\routetable.txt) do route delete 0.0.0.0 mask 0.0.0.0 %%a
for /f "tokens=3" %%a in (c:\routetable.txt) do route add 10.209.60.0 mask 255.255.255.0 %%a
ping -n 10 127.1 >nul
del routetable.txt
echo. & pause