Jak znaleźć wszystkie pliki PDF w katalogach i ich podkatalogach?

17

Chcę wyświetlić listę wszystkich plików PDF w katalogach bieżącego katalogu roboczego. Jakie polecenie może to zrobić?

Pamiętam kombinację lsi, */*.pdfale nie pamiętam, jaka dokładnie kombinacja.

jak on
źródło
Czy chcesz listę wszystkich plików pdf, czy listę wszystkich plików o rozszerzeniu nazwy pliku „.pdf”?
Ocaso Protal

Odpowiedzi:

22

Możesz użyć:

find -iname '*.pdf'

z lsmoże:

ls -lR | grep '/\|pdf$'

zetah
źródło
Polecenie Firs nie działa, dane wyjściowe: ls: nie można uzyskać dostępu * .pdf: Brak takiego pliku lub katalogu
ashim 31.01.12
1
ups, przepraszam. to polecenie jest rzeczywiście błędne. Będę edytować
zetah
1
Zawsze cytuj findwzorce (jak w -name '*.pdf'), aby powłoka nie rozwijała globalnego wzorca (tak by się stało, gdybyś miał plik pdf w bieżącym katalogu).
enzotib
2
Jeśli masz pliki o niespójnej wielkości znaków, użyj -iname \*.pdfrównież, aby znaleźć pliki z rozszerzeniem .PDF, .PdF itp.
Tom Regner
5

Użyj znajdź

find . -name '.pdf'

Zobacz także: http://content.hccfl.edu/pollock/unix/findcmd.htm

Pantera
źródło
Nie powinno tak być find . -name '*.pdf'?
nispio
1
Nie musisz używać znaku zastępczego z find
Panther
Robisz na Macu @Panther
khaverim
@khaverim jaki system operacyjny to Mac?
thymaro,
Na Ubuntu potrzebuję równieżfind . -name '*.pdf'
Foton
4

Najłatwiejszy sposób (jeśli używasz Ubuntu Desktop):

Przejdź do folderu domowego w Nautilus, naciśnij Ctrl+ Fi wyszukaj .pdf.

Zrzut ekranu przedstawiający proces wyszukiwania

Możesz także zmienić lokalizację i sprecyzować wyszukiwanie.

@ WarriorIng64 Należy pamiętać, że to samo zlokalizuje wszystkie pliki z .pdf występujące w dowolnym miejscu w nazwie pliku. Jeśli chcesz konkretnie pliki, które system identyfikuje jako pliki PDF, kliknij zielony przycisk + obok „Przeładuj”, dodaj filtr „Typ pliku” „PDF / Postscript” i kliknij „Przeładuj”, aby uzyskać tylko rzeczywiste pliki PDF. wprowadź opis zdjęcia tutaj

One Zero
źródło
2
@ WarriorIng64 UPDATED
One Zero
Piękny. Szalony Zapomniałem, jak to było proste.
don.joey
-1

Najprostszym sposobem będzie:

locate *.pdf

To polecenie znajdzie wszystkie pliki PDF obecne w twoim systemie.

Rajat
źródło
2
Uważaj na to, że globbing muszli robi dla ciebie magię. Jeśli *.pdfrozwija się do plików w bieżącym katalogu roboczym, zostaną one przekazane do locatepolecenia, a nie do surowego *.pdfargumentu.
gertvdijk,
-1

Użyj polecenia:

ls | grep .pdf
Żartowniś
źródło