Listar arquivos com caminho usando a linha de comando do Windows


11

Minha estrutura de pastas em uma unidade é assim (no Windows):

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

Esse arranjo continua para centenas de pastas. Dentro de Fd1 de cada pasta x, existem certos .batarquivos. Estou procurando uma maneira de extrair uma lista de .batarquivos com o caminho inteiro usando a linha de comando do Windows para um arquivo de texto. Com pouca experiência no uso do prompt de comando, não tenho idéia de como isso pode ser alcançado.

Quero que a saída seja uma lista como esta:

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

Alguém pode me ajudar?

Respostas:



4

Eu sugiro usar o comando FOR com a opção / R.

Por exemplo, para encontrar todos os arquivos no diretório atual, use:

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

Para começar a procurar em um diretório arbitrário, use este formulário do comando:

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

E, finalmente, para procurar todos os arquivos em lotes no diretório c: \ bin, você pode fazer isso:

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

Um ponto que devo destacar, no entanto, é que, se você estiver usando esse comando em um arquivo em lotes, precisará dobrar os sinais de%, para que esses exemplos se tornem:

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

O uso de i como variável aqui é completamente arbitrário e foi implantado em mim nos meus dias de FORTRAN.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.