BATCH - ROUTE ADD& PING WITH VARIABLES

时间:2013-09-09 08:59:12

标签: windows batch-file ewon

关于在批处理文件的ROUTE ADD语法中使用变量,我有一个非常的noob问题。好话,我要求输入2个值,然后我用它们创建2个特定的IP地址,然后我想将它们传递给ROUTE ADD语法,但在我的操作系统(Windows7 x64)上,当我运行脚本时,我可以看到正确的IP01和IP02变量,但我没有ROUTE ADD命令来识别IP01和IP02 ...即使我把%IP01%和%IP02%显示的命令在屏幕上没有写任何内容,所以我无法继续处理批处理文件。 PING命令也有同样的问题。

这是我写的原始代码:

@ECHO OFF
REM ******************************
REM ROUTE MAP for ENDIA-eWON
REM ******************************

CLS
ECHO.
COLOR 0A
ECHO.+ROUTE MAP 10.128.X.0 with eWON-sn + IP 172.31.1.X
ECHO.+PING ROUTE JUST DEFINED, TO CHECK IT
ECHO.----------------------------
ECHO.Author: aColussi@atomat.com
ECHO.v1.00
ECHO.
ECHO.
ECHO.
SET /P RGWsn=Insert eWON sn (RGWsn):
SET /P EndianIP=Insert last value X for the Endian network (172.30.1.X):

REM ******************************
REM DEFINE IP01 (eWON network) and IP02 (ENDIAN network)
REM ******************************

SET IP01 = 10.128.%RGWsn%.0
SET IP02 = 172.30.1.%EndianIP%

REM TEST THE 2 VALUES JUST DEFINED
SET IP01
SET IP02
PAUSE

@ECHO ON
REM ADD THE ROUTE
ROUTE ADD %IP01% MASK 255.255.255.0 %IP02% METRIC 1
PAUSE

@ECHO OFF
REM TEST THE ROUTE AND THE PING OF THE eWON ASSOCIATED DEVICE (.254)
ECHO.
ECHO.VIEW THE ROUTES ON OUR WORKSTATION
ROUTE PRINT |MORE
PAUSE
ECHO.
ECHO.PING-TEST FOR THE JUST-ADDED ROUTE/IP (USING eWON .254)
SET IP03 = 10.128.%RGWsn%.254
PING %IP03%
PAUSE

1 个答案:

答案 0 :(得分:4)

执行SET时遇到问题。 “RGWsn”和“EndianIP”的SET很好,但在其他地方,这些空间引起了问题。

SET IP01 = 10.128.%RGWsn%.0

这样你就可以创建一个变量“IP01”并将其值设置为“10.128。%RGWsn%.0” 注意这里的空格。

你应该这样做

SET IP01=10.128.%RGWsn%.0

同样适用于IP02和IP03。

看看this类似的问题。