%*在批处理文件中的含义是什么

fem*_*nkk 22 windows cmd batch-file

我在批处理文件和命令行中看到了%*的用法.谷歌搜索没有给我任何结果.有人可以通过一个例子解释%*的典型用法.谢谢

Jon*_*Jon 28

它表示"命令行中的所有参数".

例如,当您要将命令行从批处理文件转发到另一个程序时,它很有用:

REM mybatchfile.cmd
echo You called this with arguments: %*
echo I will now forward these to the DIR command.
dir %*
Run Code Online (Sandbox Code Playgroud)


dbe*_*ham 16

以上任何答案中未列出的一个重点:即使在操作之后,也会从命令行%*扩展到所有参数SHIFT.

正常情况下,SHIFT将参数移动%2%1,%3%2等,而%1不再可用.但%*忽略任何SHIFT,所以完整的参数列表始终可用.这既可以是祝福,也可以是诅咒.


Dav*_*nan 6

%* 扩展到传递给脚本的参数的完整列表。

当您要调用其他程序或脚本并传递与脚本相同的参数时,通常会使用它。


Mic*_*upp 5

修饰符%*是一个唯一的修饰符,表示批处理文件中传递的所有参数。您不能将此修饰符与修饰符结合使用%~。语法%~必须以有效的参数值终止。

来源: