小弟初学BAT,现写一个传递参数的BAT,但无法正确处理传递的参数,请教各位大大.
写一个a.bat,需要传递参数%1,%2,%3...,我想实现的是前面的参数数量是可变的,最后一个参数规定为一个路径参数,即调用方式可为1. a.bat aa c:\dd,也可为2. a.bat aa bb c:\dd,调用的参数数量是不定的.
我现在在a.bat中处理是这样的:
if not {%2} == {} set DIR=%~2%
这样只能假定参数只有两个,第2个为路径参数,但如果用第2种方法调用就出错了,实际应该dir = %~3%, 小弟初学,不知用何办法可动态取得最后一个参数,现请教各位大大.
有点小要求,就是能跨win98/winnt运行,我的测试机器为win2000,win98,winxp,win2003
[ Last edited by dejoy on 2008-9-27 at 22:11 ]
写一个a.bat,需要传递参数%1,%2,%3...,我想实现的是前面的参数数量是可变的,最后一个参数规定为一个路径参数,即调用方式可为1. a.bat aa c:\dd,也可为2. a.bat aa bb c:\dd,调用的参数数量是不定的.
我现在在a.bat中处理是这样的:
if not {%2} == {} set DIR=%~2%
这样只能假定参数只有两个,第2个为路径参数,但如果用第2种方法调用就出错了,实际应该dir = %~3%, 小弟初学,不知用何办法可动态取得最后一个参数,现请教各位大大.
有点小要求,就是能跨win98/winnt运行,我的测试机器为win2000,win98,winxp,win2003
[ Last edited by dejoy on 2008-9-27 at 22:11 ]

