【PE】%0 ~%9——给批处理batch脚本传递参数以及shift命令的用法

网友投稿 1604 2022-09-13

【PE】%0 ~%9——给批处理batch脚本传递参数以及shift命令的用法

【PE】%0 ~%9——给批处理batch脚本传递参数以及shift命令的用法

###Date: 2018.5.19

===============================================================

分类:批处理脚本

给批处理脚本传递参数的注意事项:

(1)批处理文件中可引用的参数为%0~%9,%0是指批处理文件的本身,也可以说是一个外部命令;%1~%9是批处理参数,也称形参。批处理最多可以接收9个额外的参数。

(2)通过利用shift命令对参数进行偏移,可以取到更多的参数。

test1.bat:

@echo offecho param[0]= %0echo param[1]= %1echo param[2]= %2echo param[3]= %3echo param[4]= %4pause

在命令行中运行test1.bat,结果如下:

从上图结果中可以发现,我们传给脚本了5个参数,但只输出显示了4个参数,如果只传给脚本3个参数,那么%4就为空了。

test2.bat:

@echo offecho param[0]= %0echo param[1]= %1echo param[2]= %2echo param[3]= %3echo param[4]= %4echo param[5]= %5echo param[6]= %6echo param[7]= %7echo param[8]= %8echo param[9]= %9pause

在命令行中运行test2.bat,结果如下:

从上图可以看出来,我们最多可以向批处理脚本传递9个形参。如果想要传递更多参数怎么办呢?下面继续分析:

test3.bat

@echo offecho %1 %2 %3 %4 %5 %6 %7 %8 %9 shift /0echo %1 %2 %3 %4 %5 %6 %7 %8 %9 shift /1echo %1 %2 %3 %4 %5 %6 %7 %8 %9 shift /2echo %1 %2 %3 %4 %5 %6 %7 %8 %9 shift /3echo %1 %2 %3 %4 %5 %6 %7 %8 %9 shift /5pause

在命令行中运行test3.bat,结果如下图所示:

分析:如果想要实现向批处理程序中传递超过9个参数,可以利用shift [/n]命令。

Shift 命令:更改批处理文件中可替换参数的位置

shift [/n]

n 的取值是[0,8],且为整数;[/n]为可选参数,当赋予n某个值时,就意味着命令从第n个参数开始移位;当n赋予的值为0,1或不带有任何命令选项的 shift时,则表示批处理文件中替换参数左移一个位置,后面的替换参数陆续填补上去,直至可替换参数为空。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:【Cmd】Windows下批处理常用命令总结
下一篇:【cmd】windows批处理读取文件内容到一个变量中
相关文章

 发表评论

暂时没有评论,来抢沙发吧~