2

我需要在 Windows 7 启动时执行两个命令(使用 .bat 文件):

route delete 0.0.0.0 192.168.5.201
route -p add 192.168.4.0 mask 255.255.0.0 192.168.5.201

如果系统上不存在第一条路线 - .bat 文件无法正确执行。第一个命令在无限循环上执行。我如何检查这条路线是否存在然后执行第一个命令?

PS或者也许有另一种方法可以在没有.bat文件的情况下做到这一点?

4

1 回答 1

3

我无法在这里重现无限循环;对我来说,它只是因错误而退出。

但是您可以使用以下命令检查特定路线

route print 0.0.0.0 192.168.5.201

但是,仅此还不够,因为退出代码route始终为 0。所以你必须通过管道findstr

route print 0.0.0.0 192.168.5.201 | findstr 192.168.5.201

之后,您可以检查errorlevel

if not errorlevel 1 route delete 0.0.0.0 192.168.5.201

或链接命令:

route print 0.0.0.0 192.168.5.201 | findstr 192.168.5.201 && route delete 0.0.0.0 192.168.5.201
于 2012-08-02T15:24:10.987 回答