Список файлов с путем, используя командную строку Windows

11

Моя структура папок на диске выглядит так (в Windows):

Folder 1
 Fd1
 Fd2
 Fd3
 Fd4
 Fd5
Folder 2
 Fd1
 Fd2
 Fd3
 Fd4
 Fd5

Эта договоренность продолжается для сотен папок. Внутри Fd1 каждой папки x находятся определенные .batфайлы. Я ищу способ извлечь список .batфайлов с полным путем с помощью командной строки Windows в текстовый файл. Имея небольшой опыт использования командной строки, я не знаю, как этого можно достичь.

Я хочу, чтобы вывод был таким списком:

............
D:\Folder 1\Fd1\one.bat
D:\Folder 2\Fd2\two.bat
............

Кто-нибудь может мне помочь?

Четан С.
источник

Ответы:

31

Если я понимаю, что вы ищете, попробуйте

dir/s/b *.bat

Если это работает, то перенаправьте его в текстовый файл ....

dir/s/b *.bat > textfile.txt

Также может оказаться полезным иметь список параметров командной строки для команды DIR .

Деннис
источник
4

Я бы предложил использовать команду FOR с ключом / R.

Например, чтобы найти все файлы в и в текущем каталоге, используйте:

for /r %i in (*) do @echo %i

Чтобы начать поиск из произвольного каталога, используйте эту форму команды:

for /r "C:\TMP" %i in (*) do @echo %i

И, наконец, чтобы найти все командные файлы в каталоге c: \ bin, вы можете сделать это:

for /r "c:\bin" %i in (*.bat) do @echo %i

Однако следует отметить, что если вы используете эту команду в командном файле, вам нужно будет удвоить знаки%, поэтому приведем следующие примеры:

for /r %%i in (*) do @echo %%i
for /r "C:\TMP" %%i in (*) do @echo %%i
for /r "c:\bin" %%i in (*.bat) do @echo %%i

Использование i в качестве переменной здесь совершенно произвольно и впервые было внедрено в меня в мои дни на Фортране.

Гарри Оффорд
источник