como listar todos os arquivos e diretórios em determinado diretório com caminho completo, mas não recursivo?

como listar todos os arquivos e diretórios em determinado diretório com caminho completo, mas não recursivo?

De alguma forma, como dir /bo comando, mas também preciso de arquivos ocultos e de sistema. O comando dir integrado não permite listar esses arquivos 'ocultos' com o resto e devo usar /spara ter o caminho completo lá, o que obviamente não é recursivo.

Também brinquei com a versão do lscomando windows e também não tive sorte. Para exibir o caminho completo você deve adicionar um asterisco ( mydir\*) no final do diretório que você está listando, mas isso o torna recursivo.

Responder1

Se não quiser instalar nada, você também pode usar o seguinte comando:

for /f "delims=" %a in ('cd') do @for /f %b in ('dir /b /a') do @echo %a\%b

Você precisa cdentrar no diretório primeiro ou não funcionará.

Responder2

Experimente o seguinte comando:

dir /s /b /a

Ele fornecerá TODOS os arquivos, você pode executá-los FINDse quiser ou adicionar um nome de pasta.

Responder3

Se você tentou o ls, por que não instalar o cygwin? Você pode usar find no cygwin:

find -name "*"

Se você instalar o cygwin e quiser usar o find no cygwin, certifique-se de que o find no cygwin seja chamado usando o caminho completo ou insira o caminho do bin do cygwin antes do system32 porque o Windows também possui um find.exe.

Responder4

Esta é uma pergunta antiga, mas pensei em acrescentar algo de qualquer maneira.

DIR não percorre corretamente todas as árvores de diretórios desejadas, principalmente aquelas em C:. Ele simplesmente desiste em alguns lugares devido a diferentes proteções.

ATTRIB funciona muito melhor porque encontra mais. (Por que essa diferença? Por que a MS faria um utilitário funcionar de uma maneira e outro diferente nesse aspecto? Dane-se se eu sei.) Na minha experiência, a maneira mais eficaz de lidar com isso, embora seja um erro, é obter duas listagens:

attrib /s /d C:\ >%TEMP%\C-with-directories.txt

attrib /s C:\ >%TEMP%\C-without-directories.txt

e obtenha a diferença entre eles. Essa diferença são os diretórios em C: (exceto aqueles que estão muito bem escondidos). Para C:, normalmente eu faria isso executando como administrador.

informação relacionada