当前位置:  开发笔记 > 编程语言 > 正文

如何从第N个位置获取批处理文件参数?

如何解决《如何从第N个位置获取批处理文件参数?》经验,为你挑选了1个好方法。

继续如何在批处理文件中传递命令行参数如何通过完全指定参数来获取其余参数?我不想使用SHIFT,因为我不知道可能有多少参数,并且如果可以的话,我们希望避免对它们进行计数.

例如,给定此批处理文件:

@echo off
set par1=%1
set par2=%2
set par3=%3
set therest=%???
echo the script is %0
echo Parameter 1 is %par1%
echo Parameter 2 is %par2%
echo Parameter 3 is %par3%
echo and the rest are %therest%

跑步mybatch opt1 opt2 opt3 opt4 opt5 ...opt20会产生:

the script is mybatch
Parameter 1 is opt1
Parameter 2 is opt2
Parameter 3 is opt3
and the rest are opt4 opt5 ...opt20

我知道%*给出所有参数,但我不是前三个(例如).



1> Patrick Cuff..:

以下是如何在不使用的情况下执行此操作SHIFT:

@echo off

for /f "tokens=1-3*" %%a in ("%*") do (
    set par1=%%a
    set par2=%%b
    set par3=%%c
    set therest=%%d
)

echo the script is %0
echo Parameter 1 is %par1%
echo Parameter 2 is %par2%
echo Parameter 3 is %par3%
echo and the rest are %therest%

推荐阅读
N个小灰流_701
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有