Como copiar uma lista de nomes de arquivos para o arquivo de texto?


17

Como posso copiar os nomes dos arquivos em um diretório para um arquivo de texto ou uma área de transferência?


1
Como mencionado por hochl, você não dá o nome do sistema operacional ... mas a palavra "lote" referem-se implicitamente que o famoso "W" ...: S
— climenole


Se você estiver de acordo com o caminho completo do arquivo, mantenha pressionada a tecla Shift, clique com o botão direito do mouse nos arquivos / pastas destacados e escolha "Copiar como caminho". Isso fornecerá o caminho completo de todos os arquivos / pastas selecionados na área de transferência.
— 214 Josh Josh

Respostas:


31

É muito, muito fácil no interpretador de linha de comando do Windows (todos os sistemas operacionais Windows):

  1. Abra um prompt de comando (Iniciar -> Executar -> cmd Enter)
  2. Navegue ( cd) para o diretório cujos arquivos você deseja listar.
  3. Digite (por exemplo, ) e pressione .dir > output_file_namedir > C:\dir.txtEnter

Abra o arquivo de texto recém-criado ( C:\dir.txt) e você terá a saída completa do dircomando nesse diretório.

O símbolo maior que ( >) significa redirecionamento de saída; envia a saída da maioria dos comandos para um arquivo especificado e é muito útil para poder registrar a saída dos comandos.

A saída pode ser controlada com todas as várias opções disponíveis para personalizar a saída normal do comando DIR; basta adicionar o redirecionamento de saída no final dos argumentos que você deseja enviar para o arquivo de texto.

Atualização: Criando um menu de contexto com o botão direito do mouse para criar a listagem de conteúdo do diretório

Crie um arquivo em lotes e salve-o como %windir%\DirList.bat:

@echo off
set dirpath=%1
dir %dirpath% /-p /o:gn > "%dirpath%\DirContents.txt"
exit

Abra seu SendTodiretório:

Windows 7 / Vista: %appdata%\Microsoft\Windows\SendTo
Windows XP:%USERPROFILE%\SendTo

Crie um novo atalho apontando DirList.bate chame-o como quiser.

Agora, clicar com o botão direito do mouse em qualquer diretório e selecionar o SendTosubmenu apresentará seu novo comando para listar o conteúdo do diretório.

NOTA: Isso funcionará apenas ao clicar com o botão direito do mouse em um diretório e listará apenas o conteúdo do diretório em que você clicou com o botão direito. Ele também salva a lista nesse diretório (para evitar a substituição de outros arquivos). O script pode ser facilmente modificado para alterar onde o arquivo da lista de saída está armazenado.


4
Eu acho que você está perdendo o /binterruptor. Sem ele, informações adicionais, como tamanhos de arquivo e datas de criação, também serão registradas no arquivo.
— Bhargav Bhat

Realmente depende do que ele quer gravar. Usei o conjunto mais simples para não confundir com informações adicionais. Você verá que eu adicionei informações de que a saída pode ser personalizada com todas as opções disponíveis do comando DIR.
— Music2myear

O que eu gostaria de fazer é criar um arquivo .bat contendo o comando: dir > dir.txt. Depois, posso copiar esse arquivo para qualquer pasta, executá-lo e obter a lista de arquivos de texto ali, sem abrir um prompt de comando e navegar pelas pastas.
— Steven Noto

Isso funcionaria. Pode até haver maneiras de integrar essa funcionalidade ao menu de contexto do botão direito.
— music2myear

Este link tem instruções para imprimir uma lista, mas pode ser facilmente modificado. Vou ver se consigo montar algo esta tarde: watchingthenet.com/…
— music2myear

9

Você pode usar dir /b > files.txtna linha de comando para obter a lista de nomes de arquivos armazenados files.txt. Adicione a /sse desejar uma listagem recursiva.

Para colocar o conteúdo diretamente na área de transferência, basta canalizar a saída para clip, ou seja, executar dir /b | clip.


6

Como você não mencionou um sistema operacional, veja como ele está funcionando no * nix:

$ find . -maxdepth 1 -type f > /tmp/files.txt

para arquivos no diretório atual ou

$ find . -type f > /tmp/files.txt

se você deseja obter todos os arquivos em uma árvore de diretórios.


2

Outra variante Unix seria

ls -R > myfile.txt 

Isso listaria tudo no diretório atual e nos diretórios recursivos.


1

No explorador de arquivos do Windows, crie um atalho na pasta SendTo e digite o seguinte comando:

%windir%\system32\cmd.exe /k dir /b "%1"

remova o texto "Iniciar"

Depois que o comando foi executado uma vez, você pode alterar os padrões da janela (como a seleção com o mouse, em vez de Editar → Marcar).

O único problema é que você precisará ignorar a primeira linha (que diz "arquivo não encontrado").

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.