Wyświetl listę plików ze ścieżką za pomocą wiersza polecenia systemu Windows

11

Moja struktura folderów na dysku wygląda następująco (w systemie Windows):

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

To ustawienie jest kontynuowane dla setek folderów. Wewnątrz Fd1 każdego folderu x są pewne .batpliki. Szukam sposobu na wyodrębnienie listy .batplików z całą ścieżką przy użyciu wiersza polecenia systemu Windows do pliku tekstowego. Z niewielkim doświadczeniem w korzystaniu z wiersza polecenia nie mam pojęcia, jak można to osiągnąć.

Chcę, aby wynik był taką listą:

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

Czy ktoś może mi pomóc?

Chethan S.
źródło

Odpowiedzi:

4

Sugeruję użycie polecenia FOR z przełącznikiem / R.

Na przykład, aby znaleźć wszystkie pliki w bieżącym katalogu i poniżej niego, użyj:

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

Aby rozpocząć wyszukiwanie z dowolnego katalogu, użyj tej formy polecenia:

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

Na koniec, aby wyszukać wszystkie pliki wsadowe w katalogu c: \ bin, możesz to zrobić:

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

Należy jednak zwrócić uwagę na to, że jeśli używasz tego polecenia w pliku wsadowym, będziesz musiał podwoić znaki%, więc te przykłady staną się:

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

Użycie i jako zmiennej tutaj jest całkowicie arbitralne i po raz pierwszy zostało wszczepione we mnie za moich dni FORTRAN.

Garry Offord
źródło