Elenca i file con il percorso utilizzando la riga di comando di Windows


11

La mia struttura di cartelle in un'unità è così (in Windows):

Folder 1
 Fd1
 Fd2
 Fd3
 Fd4
 Fd5
Folder 2
 Fd1
 Fd2
 Fd3
 Fd4
 Fd5

Questa disposizione continua per centinaia di cartelle. All'interno di Fd1 di ogni cartella x ci sono alcuni .batfile. Sto cercando un modo per estrarre un elenco di .batfile con l'intero percorso utilizzando la riga di comando di Windows in un file di testo. Con poca esperienza nell'uso del prompt dei comandi, non ho idea di come raggiungere questo obiettivo.

Voglio che l'output sia un elenco come questo:

............
D:\Folder 1\Fd1\one.bat
D:\Folder 2\Fd2\two.bat
............

Qualcuno può aiutarmi?

Risposte:


31

Se capisco cosa stai cercando, prova

dir/s/b *.bat

Se funziona, reindirizzalo in un file di testo ....

dir/s/b *.bat > textfile.txt

Potrebbe anche essere utile disporre di un elenco di opzioni della riga di comando per il comando DIR .


4

Suggerirei di usare il comando FOR con l'opzione / R.

Ad esempio, per trovare tutti i file nella e nella directory corrente, utilizzare:

for /r %i in (*) do @echo %i

Per iniziare la ricerca da una directory arbitraria, utilizzare questo modulo del comando:

for /r "C:\TMP" %i in (*) do @echo %i

E infine, per cercare tutti i file batch nella directory c: \ bin, puoi fare questo:

for /r "c:\bin" %i in (*.bat) do @echo %i

Un punto che dovrei sottolineare, tuttavia, è che se si utilizza questo comando in un file batch, sarà necessario raddoppiare i segni%, quindi questi esempi diventeranno:

for /r %%i in (*) do @echo %%i
for /r "C:\TMP" %%i in (*) do @echo %%i
for /r "c:\bin" %%i in (*.bat) do @echo %%i

L'uso di i come variabile qui è completamente arbitrario ed è stato impiantato per la prima volta in me ai miei giorni FORTRAN.

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.