只是将一些shell脚本转换为批处理文件,有一件事我似乎找不到…这是一个简单的计数命令行参数的数量。
例如。如果你有:
myapp foo bar
在壳牌:
> $# – > 2
> $ * – > foo酒吧
> $ 0 – > myapp
> $ 1 – > foo
> $ 2 – >酒吧
批量
> ?? – > 2< ----什么命令?
>%* – > foo酒吧
>%0 – > myapp
>%1 – > foo
>%2 – >酒吧
所以我环顾四周,我看到错误的地方或我是盲目的,但我似乎找不到一个方法来获取传递的命令行参数的数量。
对于批处理文件,是否有类似于shell的“$#”的命令?
ps。最近我找到的是迭代通过%1s和使用’shift’,但我需要引用%1,%2等等后面的脚本,所以没有好处。
Googling有点给你从
wikibooks的以下结果:
set argC=0 for %%x in (%*) do Set /A argC+=1 echo %argC%
似乎cmd.exe的演变有点从旧的DOS天:)