Я хотел бы получить список всех файлов (включая их полный путь) в переменную, разделенную пробелами. Мой Google-fu, кажется, слаб в этом отношении, потому что я продолжаю сталкиваться с проблемами.
Мне сохранили базовый каталог в %baseDir % и хотел бы проанализировать его для файлов (не рекурсивно вызывающий или включая подкаталоги). Как я упомянул, это должно войти в список. Я предположил бы, что существует миленький ярлык, который я мог использовать, но для цикла и конкатенации добьется цели также.
Идеально, у меня было бы что-то вроде этого:
echo fileList
C:\file1.c C:\file2.c C:\file3.c
Довольно просто:
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