arrays - 批处理脚本 - 在 For 循环中创建动态变量名称或数组

标签 arrays variables batch-file dynamic names

我想问你是否可以提供建议。

我不知道是否可以批量或数组或类似的方式创建动态变量名称。例如,在 for 循环之前设置 c=0,然后在 for 循环中设置 c = c+1 并使用此数字在 for 循环中创建动态变量名称,例如:set entry%c% = 'somestring'

然后使用这些编号的变量在 for 循环外打印输出,例如:
回声%entry1%
回声%entry2%

例子:

@echo off

set /a c=1

for %%i in (list.txt) do (

set /a c=c+1
set entry%c% = %%i

)

echo %entry1%
echo %entry2%

感谢帮助。

最佳答案

我会用

for /f "tokens=1*delims=[]" %%a in ('find /n /v "" list.txt') do set "entry%%a=%%b"

但警告的话
set entry%c% = %%i

批处理对 SET 中的空格敏感陈述。如果这行得通,它会将名为“entry1Space”的变量设置为“SpacethefirSTLineofthefile”的值。
set "var=value"我使用的语法确保批处理行上的任何尾随空格都不包含在分配给 var 的值中。 .

关于arrays - 批处理脚本 - 在 For 循环中创建动态变量名称或数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24234994/

相关文章:

javascript - 数组更改时,Angular 不会更新 View

python - 绘制二维 numpy 数组的图例

batch-file - 启动 cmd.exe 并更改目录?

Windows 命令行和批处理文件 : potential problems with unescaped special characters in filenames?

javascript - 为什么当我在最后一个 else 语句中更改 slaying 时,浏览器会崩溃

python - 如何在给定实际坐标的情况下生成 matplotlib 填充等高线图的数据?

php - 无法将 session 变量存储到数据库中

ios - UIViewController变量初始化

javascript - var 声明(例如 var x;)会覆盖以前的值

batch-file - 用于检查文件最后一行的 Windows 批处理脚本帮助