Batch file 如何使用批处理脚本在数组中存储值

Batch file 如何使用批处理脚本在数组中存储值,batch-file,Batch File,这是否可以使用批处理脚本在数组中存储包列表 SET array=(adb shell pm list packaages -3) 虽然我不知道bash,但这是一种批量存储变量中任何内容列表的方法: set Array=adb shell pm list packages -3 for %%v in (%Array%) do echo %%v 要将同一元素中的多个单词分组,请将它们括在引号中: set Array=adb "shell pm" "list packages -3" 在这种情况

这是否可以使用批处理脚本在数组中存储包列表

SET array=(adb shell pm list packaages -3)

虽然我不知道bash,但这是一种批量存储变量中任何内容列表的方法:

set Array=adb shell pm list packages -3
for %%v in (%Array%) do echo %%v
要将同一元素中的多个单词分组,请将它们括在引号中:

set Array=adb "shell pm" "list packages -3"
在这种情况下,您可以使用此表格来消除引号:

for %%v in (%Array%) do echo %%~v

可能重复:我更改了标记,但您的意思是在Windows批处理文件中,如问题中的标题和文本所示,还是在
bash
脚本中?thnks…但我仍然面临编辑字符串的问题,如…package:com:xyz..如果我只想要com:xyz…请避免反勾号。。。这些在中世纪使用。在21世纪,我们使用
$(…)
来代替。我得到的错误是,数组没有定义为批处理文件中的内部或外部命令。在您的
路径中是否有
adb
?是否有人可以在批处理脚本数组中转换此shell脚本=($(./adb shell pm list packages-3)),用于“${array[@]}”中的var做Pkg=${var\p*:}Pkg='echo–n${Pkg}|tr–d“\r.”/adb uninstall${Pkg}DoneI向您展示了如何迭代这些值。
echo
命令只显示每个迭代值,因此必须通过要执行的命令对其进行更改。我不知道您要执行的命令是什么(我不知道bash,记得吗?;-)
for %%v in (%Array%) do echo %%~v