Windows 在批处理文件中,%*是什么意思?
我在批处理文件和命令行中看到了Windows 在批处理文件中,%*是什么意思?,windows,batch-file,cmd,Windows,Batch File,Cmd,我在批处理文件和命令行中看到了%*的用法 有人能用一个例子解释一下%*的典型用法吗?%*扩展到传递给脚本的参数的完整列表 通常,当您要调用其他程序或脚本并传递传递给脚本的相同参数时,可以使用它。它表示“命令行中的所有参数” 例如,当您希望将批处理文件中的命令行转发到另一个程序时,此选项非常有用: REM mybatchfile.cmd echo You called this with arguments: %* echo I will now forward these to the DIR
%*
的用法
有人能用一个例子解释一下
%*
的典型用法吗?%*
扩展到传递给脚本的参数的完整列表
通常,当您要调用其他程序或脚本并传递传递给脚本的相同参数时,可以使用它。它表示“命令行中的所有参数”
例如,当您希望将批处理文件中的命令行转发到另一个程序时,此选项非常有用:
REM mybatchfile.cmd
echo You called this with arguments: %*
echo I will now forward these to the DIR command.
dir %*
%*
修饰符是唯一的修饰符,表示批处理文件中传递的所有参数。您不能将此修饰符与%~
修饰符结合使用。%~
语法必须以有效的参数值终止
资料来源:
- (已解散)
%*
从命令行扩展到所有参数,即使在执行SHIFT
操作后也是如此
通常,
SHIFT
会将参数%2
移动到%1
,%3
移动到%2
,等等,%1
不再可用。但是%*
忽略任何移位
,因此完整的参数列表始终可用。这可能是好事,也可能是坏事。链接现在已断开。我在该页面的存档版本中添加了一个链接。请注意,文档中提到的是Windows XP。Windows 10可能有不同的修改器可用