batch-file - 可以使用 %* 将值分配给批处理文件中的列表或数组吗?

标签 batch-file

%1是第一个命令行参数,%2是第二个命令行参数,依此类推直到 %9 .
%*指的是所有的论点。有什么方法可以将这些值分配给一个列表,就像在下面提到的 shell 脚本中完成的那样?
argv=("$@")哪里$@指的是 shell 脚本中的所有命令行参数。

最佳答案

像这样的东西? :

@echo off

setlocal enableDelayedExpansion
set arg_number=0
for %%a in (%*) do (
    set "args[!arg_number!]=%%a"
    set /a arg_number=arg_number+1
)

echo %args[0]%
echo %args[1]%
echo %args[2]%

关于batch-file - 可以使用 %* 将值分配给批处理文件中的列表或数组吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40483267/

相关文章:

PowerShell 性能问题

batch-file - 为什么我的 .bat 文件在调用另一个 .bat 文件后突然结束?

sql-server-2008 - 如何显示使用.bat安装SQL 2008时出现的错误?

batch-file - 批处理文件 - 如何将 FindStr 与百分比一起使用

java通过命令获取批处理文件命令的输出

batch-file - 让 "the matrix"运行几秒钟?

batch-file - .bat 和 .cmd 在 ERRORLEVEL 上不同,谁决定 SET 的行为?

batch-file - 使用批处理刷新桌面

linux - 远程搜索文件中的文本

Windows 提取所有匹配项