Come copiare un elenco di nomi di file in file di testo?


17

Come posso copiare i nomi dei file in una directory in un file di testo o negli Appunti?


1
Come menzionato da Hochl, non si fornisce il nome del sistema operativo ... ma la parola "batch" si riferisce implicitamente a quel famoso "W" ...: S
climenole


Se stai bene con il percorso completo del file, tieni premuto MAIUSC, fai clic con il pulsante destro del mouse sui file / cartelle evidenziati e scegli "Copia come percorso". Questo ti darà il percorso completo di tutti i file / cartelle selezionati negli appunti.
Josh

Risposte:


31

È molto, molto semplice nell'interprete della riga di comando di Windows (tutti i sistemi operativi Windows):

  1. Apri un prompt dei comandi (Start -> Esegui -> cmd Enter)
  2. Passare ( cd) alla directory di cui si desidera elencare i file.
  3. Immettere (ad es. ) E premere .dir > output_file_namedir > C:\dir.txtEnter

Apri il file di testo appena creato ( C:\dir.txt) e avrai l'output completo del dircomando in quella directory.

Il simbolo maggiore di ( >) indica il reindirizzamento dell'output; invia l'output dalla maggior parte dei comandi a un file specificato ed è molto utile per poter registrare l'output dai comandi.

L'output può essere controllato con tutte le varie opzioni disponibili per personalizzare l'output normale del comando DIR; aggiungi semplicemente il reindirizzamento dell'output alla fine di qualsiasi argomento tu voglia inviare quell'output al file di testo.

Aggiornamento: creazione di un menu contestuale del tasto destro del mouse per la creazione dell'elenco dei contenuti della directory

Crea un file batch e salvalo come %windir%\DirList.bat:

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

Apri la tua SendTodirectory:

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

Crea un nuovo collegamento che punta a DirList.bate chiamalo come preferisci.

Ora, facendo clic con il tasto destro su qualsiasi directory e selezionando il SendTosottomenu verrà visualizzato il nuovo comando per elencare i contenuti della directory.

NOTA: funzionerà solo quando si fa clic con il tasto destro su una directory e elencherà solo il contenuto della directory su cui si è fatto clic con il tasto destro. Salva inoltre l'elenco in quella directory (per evitare di sovrascrivere altri file). Lo script può essere facilmente modificato per cambiare la posizione in cui è archiviato il file dell'elenco di output.


4
Immagino che ti manchi l' /binterruttore. Senza di essa verranno registrate su file anche informazioni aggiuntive come dimensioni dei file e date di creazione.
Bhargav Bhat,

Dipende davvero da cosa vuole registrare. Ho usato il set più semplice per non confondere con informazioni aggiuntive. Vedrai che ho aggiunto informazioni che l'output può essere personalizzato con tutte le opzioni disponibili del comando DIR.
music2myear

Quello che mi piace fare è creare un file .bat contenente il comando: dir > dir.txt. Quindi posso copiare quel file in qualsiasi cartella, eseguirlo e ottenere l'elenco dei file di testo proprio lì, senza aprire un prompt dei comandi e navigare tra le cartelle.
Steven Noto,

Funzionerebbe. Ci possono anche essere modi per integrare questa funzionalità nel menu contestuale del tasto destro.
music2myear

Questo collegamento contiene istruzioni per la stampa di un elenco, ma potrebbe essere facilmente modificato. Vedrò se riesco a mettere insieme qualcosa questo pomeriggio: watchingthenet.com/…
music2myear

9

È possibile utilizzare dir /b > files.txtdalla riga di comando per ottenere l'elenco dei nomi di file memorizzati files.txt. Aggiungi a /sse desideri un elenco ricorsivo.

Per posizionare il contenuto direttamente negli Appunti, è sufficiente reindirizzare l'output clip, ovvero eseguire dir /b | clip.


6

Dato che non hai menzionato un sistema operativo, ecco come funziona su * nix:

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

per i file nella directory corrente o

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

se si desidera ottenere tutti i file in un albero di directory.


2

Un'altra variante di Unix sarebbe

ls -R > myfile.txt 

Ciò elencherebbe tutto nella directory corrente e nelle directory ricorsive.


1

Da Esplora file di Windows, crea un collegamento nella cartella SendTo e digita il seguente comando:

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

rimuovere il testo "Inizia tra"

Dopo che il comando è stato eseguito una volta, è possibile modificare le impostazioni predefinite per la finestra (come la selezione con il mouse, anziché Modifica → Seleziona).

L'unico problema è che dovrai ignorare la prima riga (che dice "file non trovato").

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.