Lista de diretórios recursivos no DOS


201

Como podemos obter uma listagem de diretório recursiva no DOS?

Estou procurando um comando ou um script no DOS que possa me fornecer a listagem de diretórios recursivos semelhante ao ls -Rcomando no Unix.

Respostas:


361

Você pode usar:

dir /s

Se você precisar da lista sem todas as informações de cabeçalho / rodapé, tente o seguinte:

dir /s /b

(Com certeza isso funcionará para o DOS 6 e posterior; pode ter funcionado antes disso, mas não me lembro.)


7
+1 muito útil. Se seus diretórios contiverem muitos arquivos, esse comando os rolará na tela muito rapidamente para serem lidos. Eu acho que é melhor canalizar a saída desse comando para um arquivo txt que você pode ler na sua própria velocidade. Por exemplo (assumindo c: \ temp é criado): dir C: \ / s> C: \ temp \ CDirectoryListing.txt
Steven Magana-Zook

Você senhor, é realmente incrível! Funcionou como um encanto! Eu usei no trabalho (onde somos forçados a ter máquinas Windows) com o gVIM! Muito, muito bom! Você me salvou horas de dor de cabeça!
Walialu

Por alguma razão, imprime o caminho absoluto completo com a pasta C: \ na frente ao usar / S e / B, isso é evitável? Eu só quero o nome do arquivo relativo.
Lama12345

2
Sim, funciona perfeitamente com Pesquisar / Substituir "C: / folder" e substituir por "".
Lama12345

22
Só para acrescentar: tree /fdá uma exibição agradável aos olhos :-)
Arun

25

dir /s /b /a:d>output.txt irá portá-lo para um arquivo de texto


23

Você pode obter os parâmetros solicitados digitando:

dir /?

Para a lista completa, tente:

dir /s /b /a:d

3

Você pode usar várias opções com o FINDSTR para remover as linhas que não deseja, como:

DIR /S | FINDSTR "\-" | FINDSTR /VI DIR

Saída normal contém entradas como estas:

28-Aug-14  05:14 PM    <DIR>          .
28-Aug-14  05:14 PM    <DIR>          ..

Você pode removê-los usando as várias opções de filtragem oferecidas pelo FINDSTR. Você também pode usar os excelentes unxutils, mas ele converte a saída em UNIX por padrão, para que você não obtenha mais CR + LF; O FINDSTR oferece a melhor opção para Windows.


Agradável! Meu requisito adicional é contar todas as linhas, o que é feito dir /s /b | find /v /c "".
#

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.