我正在尝试使用批处理文件将文件列表复制到特定目录。我需要做的第一件事是创建一个文件名列表。我看到这个帖子Create list or arrays in Windows Batch .以下工作正常。但我对它在一条线上这一事实并不满意。随着我的文件列表越来越大,它变得难以阅读。
set FILE_LIST=( "file1.txt" "file2.txt" "file3.txt" )
然后我注意到这个blog .它创建一个包含多行的数组。
set FILE_LIST[0]="file1.txt"
set FILE_LIST[1]="file2.txt"
set FILE_LIST[2]="file3.txt"
我想知道是否有一种方法可以创建如下数组:
set FILE_LIST=( "file1.txt"
"file2.txt"
"file3.txt" )
这样我就可以将文件名分成多行,同时不需要担心索引。
最佳答案
在您提到的同一主题中,有与此解决方案等效的内容(在“您也可以通过这种方式创建数组”下方):
setlocal EnableDelayedExpansion
set n=0
for %%a in ("file1.txt"
"file2.txt"
"file3.txt"
) do (
set FILE_LIST[!n!]=%%a
set /A n+=1
)
关于arrays - 多行批量创建数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23810461/