我在批处理脚本中创建了一个数组:
set arr[1]=a
set arr[2]=b
set arr[3]=c
现在我想将此数组作为参数传递给另一个批处理文件 如下:
call :processArr.bat arr
我需要这样做,因为实际上在arr [%% i]中%% i的值是可变的,它可以大于9,对于批处理文件,只能传递9个参数
此外,它必须立即将整个数组传递给批处理文件processArr.bat
请帮忙
答案 0 :(得分:1)
无需将变量作为脚本参数传递。当您Connect-VIServer -server testvc -flagForExample "commands_list.txt"
时,processArr.bat将继承调用脚本定义的所有变量。这是一个演示:
<强> test.bat的:强>
call processArr.bat
<强> test2.bat:强>
@echo off & setlocal
for /L %%I in (0,1,5) do set /a "arr[%%I] = %%I << 2"
call test2.bat
输出:
检查继承...
ARR [0] = 0
ARR [1] = 4
ARR [2] = 8
ARR [3] = 12
ARR [4] = 16
ARR [5] = 20