我想得到一个变量的所有文件(包括它们的绝对路径)的列表,用空格分隔。我的谷歌在这方面似乎很弱,因为我一直在遇到问题。
我有一个存储在%baseDir%中的基目录,并且想要解析它的文件(不是递归或包含子目录)。就像我提到的,这需要进入列表。我想我可以使用一个很好的小捷径,但for循环和连接也可以解决这个问题。
理想情况下,我会有这样的事情:
echo fileList
C:\file1.c C:\file2.c C:\file3.c
答案 0 :(得分:14)
非常简单:
setlocal enabledelayedexpansion enableextensions
set LIST=
for %%x in (%baseDir%\*) do set LIST=!LIST! %%x
set LIST=%LIST:~1%
事实上,你可以在set
命令的帮助中找到这个例子,可以通过help set
访问,并解释为什么天真的方法不起作用。
要使用不同的文件集(而不是 all ),您可以轻松更改通配符:
for %%x in (%baseDir%\*.c) do set LIST=!LIST! %%x