问题代码如下:
@ECHO OFF
SETLOCAL
IF %1#==# GOTO :EOF
IF NOT %3#==# GOTO BEGIN
SET CMDFILE=%~S0
CALL:TEST %1 %2
GOTO :EOF
:BEGIN
ECHO %*
GOTO :EOF
:TEST
ECHO
CMD /C%CMDFILE% %* /ADD
GOTO :EOF
保存为.CMD文件后,我带参数运行
.CMD TEST
我想得到这样的输出
TEST /ADD /ADD
最主要的是最后一行.这段代码是可行的
但是如果我去掉代码中的 "CMD /C" 直接使用"%CMDFILE% %* /ADD"却不行,根本没把参数传递回去,为什么?
测试环境是XP下的CMD