Elencare i file di una cartella e copiare la lista in memoria

Come elencare i file contenuti in una cartella, copiarli in qualunque editor di testo ed eventualmente stamparli.

Incredibile ma vero, a distanza di anni e anni, Windows – neppure nell’ultima versione – dispone di una funzionalità che permette di elencare i file di una cartella memorizzando tutto il contenuto di una directory in un file oppure in memoria, nell’area degli appunti.

In passato abbiamo già spiegato come Stampare elenco dei file in una cartella con Windows 8.1, Windows 7 e Windows XP, procedura che funziona anche in Windows 10 ad esempio.

Ma come fare per ottenere una lista dei file contenuti in una cartella accessibile da Windows e copiarla in memoria in modo da poterla gestire come meglio si crede?

Presentiamo una soluzione pronta all’uso che, applicata, permette di aggiungere una funzionalità al tasto destro di Windows per elencare i file di una cartella.

I passaggi per elencare i file contenuti in una directory e copiarli in memoria

Il primo passo per elencare i file contenuti in una cartella consiste nell’aprire una finestra del prompt dei comandi con i diritti di amministratore. Per procedere rapidamente, è sufficiente digitare cmd nella casella di ricerca di Windows quindi premere la combinazione di tasti CTRL+MAIUSC+INVIO.

A questo punto, si potranno digitare i seguenti due comandi:

reg add "HKCR\Directory\shell\copialista" /ve /d "Copia elenco file nella cartella" /f
reg add "HKCR\Directory\shell\copialista\command" /ve /d "cmd /c dir \"%1\" /b /a:-d /o:n  clip" /f

Elencare i file di una cartella e copiare la lista in memoria
Nel caso in cui doveste ricevere il messaggio d’errore Sintassi non valida, verificate di aver inserito ciascuno dei due comandi in una sola riga al prompt e di aver rispettato l’intera sintassi (ad esempio barre, barre rovesciate e doppi apici). La barra rovesciata dinanzi a “%1”, ad esempio, consente di “neutralizzare” i doppi apici in modo che siano trattati come parte integrante dal valore stringa da inserire nel registro di Windows.

Nel caso in cui doveste avere problemi (ad esempio Sintassi non valida), potete scaricare questo archivio compresso, cliccare sul file 01_elenco_file_cartella.reg in esso contenuto e autorizzare l’inserimento delle informazioni nel registro di Windows.


Alla comparsa del messaggio riprodotto in figura si dovrà semplicemente fare clic sul pulsante .

A questo punto, cliccando con il tasto destro del mouse su qualunque cartella, apparirà la nuova voce Copia elenco file nella cartella all’interno del menu contestuale (non serve neppure riavviare il sistema operativo).

Elencare i file di una cartella e copiare la lista in memoria
Cliccando su Copia elenco file nella cartella si vedrà apparire per una frazione di secondo una finestra a sfondo nero (si tratta della finestra del prompt dalla quale viene eseguito il comando cmd di cui sopra).

Aprendo un qualunque editor di testo e premendo la combinazione di tasti CTRL+V, la lista dei file contenuti nella cartella selezionata verrà immediatamente incollata.

Elencare i file contenuti in una cartella ottenendo maggiori informazioni su ciascuno di essi o sulla struttura delle directory

Impartendo il seguente comando, sempre dal prompt aperto con i diritti di amministratore, per ciascun file saranno indicati anche i rispettivi dettagli (data e ora di creazione, dimensione):

reg add "HKCR\Directory\shell\copialista\command" /ve /d "cmd /c dir \"%1\" /a:-d /o:n  clip" /f

È bene tenere presente che la funzionalità, così come impostata, non restituisce i nomi delle cartelle eventualmente contenute nelle cartella selezionata né ne estrae i file ivi contenuti. La sua azione è insomma limitata a elencare i soli file contenuti nella directory prescelta.

Anche qui, se si avessero problemi (Sintassi errata), basterà scaricare l’archivio Zip citato in precedenza quindi cliccare due volte sul file 02_elenco_file_cartella_con_dettagli.reg e acconsentire all’inserimento dei dati nel registro di Windows.

Per fare in modo che Windows estragga ricorsivamente la lista dei file memorizzati nella cartella selezionata e in tutte le sue sottocartelle, si può digitare al prompt dei comandi quanto segue:

reg add "HKCR\Directory\shell\copialista\command" /ve /d "cmd /c dir \"%1\" /-p /s /o:gn  clip" /f

In alternativa si può scaricare l’archivio Zip citato in precedenza quindi cliccare due volte sul file 03_elenco_file_cartella_con_dettagli_sottocartelle.reg in esso contenuto e acconsentire all’inserimento dei dati nel registro di Windows.

Infine, per ottenere l’elenco dei file e delle cartelle contenuti in una directory utilizzando una struttura ad albero, è possibile impartire al prompt il comando che segue:

reg add "HKCR\Directory\shell\copialista\command" /ve /d "cmd /c tree \"%1\" /f /a  clip" /f

In alternativa è possible scaricare l’archivio compresso citato precedentemente quindi cliccare due volte sul file 04_elenco_file_cartella_albero.reg e autorizzare l’inserimento dei dati nel registro di sistema.

In tutti i casi, dopo aver cliccato su una cartella con il tasto destro e selezionato la nuova funzione Copia elenco file nella cartella, la combinazione CTRL+V permetterà di incollare la lista dei file ovunque lo si riterrà più opportuno.

Allorquando si volesse eliminare definitivamente la funzionalità che permette di estrarre la lista dei file contenuti in una cartella dal menu contestuale di Windows, basterà usare il comando seguente (sempre dalla finestra del prompt aperta con i diritti di amministratore):

reg delete "HKCR\Directory\shell\copialista" /f

In alternativa, si può premere la combinazione di tasti Windows+R, digitare regedit, portarsi in corrispondenza della chiave HKEY_CLASSES_ROOT\Directory\shell, cliccare con il tasto destro sulla sottochiave copialista e scegliere il comando Elimina.

Ti consigliamo anche

Link copiato negli appunti