Listen Sie Dateien mit Pfad über die Windows-Befehlszeile auf

11

Meine Ordnerstruktur in einem Laufwerk sieht folgendermaßen aus (unter Windows):

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

Diese Anordnung wird für Hunderte von Ordnern fortgesetzt. In Fd1 jedes Ordners x befinden sich bestimmte .batDateien. Ich suche nach einer Möglichkeit, eine Liste von .batDateien mit dem gesamten Pfad mithilfe der Windows-Befehlszeile in eine Textdatei zu extrahieren . Mit wenig Erfahrung in der Verwendung der Eingabeaufforderung weiß ich nicht, wie dies erreicht werden kann.

Ich möchte, dass die Ausgabe eine Liste wie diese ist:

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

Kann mir jemand helfen?

Chethan S.
quelle

Antworten:

4

Ich würde vorschlagen, den FOR-Befehl mit dem Schalter / R zu verwenden.

Verwenden Sie beispielsweise Folgendes, um alle Dateien im und unter dem aktuellen Verzeichnis zu finden:

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

Verwenden Sie diese Befehlsform, um die Suche in einem beliebigen Verzeichnis zu starten:

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

Und schließlich können Sie Folgendes tun, um nach allen Batch-Dateien im Verzeichnis c: \ bin zu suchen:

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

Ein Punkt, den ich jedoch ansprechen sollte, ist, dass Sie, wenn Sie diesen Befehl in einer Batchdatei verwenden, die% -Zeichen verdoppeln müssen, sodass diese Beispiele wie folgt aussehen:

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

Die Verwendung von i als Variable ist hier völlig willkürlich und wurde mir zum ersten Mal in meinen FORTRAN-Tagen implantiert.

Garry Offord
quelle