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

分类:批处理脚本

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

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

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

test1.bat:

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

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


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

test2.bat:

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

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


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

test3.bat

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

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


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


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

shift [/n]   

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

参考:

https://blog.csdn.net/albertsh/article/details/52788106

https://www.cnblogs.com/dongzhiquan/p/3694907.html
---------------------  

原文:https://blog.csdn.net/soaringlee_fighting/article/details/80230511  
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值