Как найти все файлы PDF в каталогах и их подкаталогах?

17

Я хочу перечислить все файлы PDF в каталогах текущего рабочего каталога. Какая команда может сделать это?

Я помню комбинацию lsи, */*.pdfно не помню, какая именно комбинация.

как он
источник
Вы хотите список всех файлов PDF или список всех файлов с расширением имени файла .pdf?
Ocaso Protal

Ответы:

22

Ты можешь использовать:

find -iname '*.pdf'

с lsвозможно:

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

zetah
источник
Команда Firs не работает, вывод: ls: невозможно получить доступ * .pdf: Нет такого файла или каталога
ashim
1
ups, прости. эта команда действительно неверна. Я отредактирую
Зета
1
Всегда заключайте в кавычки findшаблоны (как в -name '*.pdf'), чтобы оболочка не расширяла шаблон глобуса (это может произойти, если у вас есть какой-нибудь PDF-файл в текущем каталоге).
энзотиб
2
Если у вас есть имена файлов с непоследовательным регистром символов, используйте -iname \*.pdfтакже, чтобы найти файлы, заканчивающиеся на .PDF, .PdF и т. Д.
Том Реднер
5

Используйте найти

find . -name '.pdf'

Смотрите также: http://content.hccfl.edu/pollock/unix/findcmd.htm

пантера
источник
Не должно ли это быть find . -name '*.pdf'?
Ниспио
1
Вам не нужен подстановочный знак с находкой
Panther
Вы делаете на Mac @Panther
khaverim
@khaverim какая ОС Mac?
тимаро
На Ubuntu мне тоже нужноfind . -name '*.pdf'
Foton
4

Самый простой способ (если вы используете Ubuntu Desktop):

Перейдите в свою домашнюю папку в Nautilus, нажмите Ctrl+ Fи выполните поиск .pdf.

Снимок экрана, показывающий процесс поиска

Вы также можете изменить местоположение и сделать свой поиск более конкретным.

@ WarriorIng64 Обратите внимание, что это само по себе найдет все файлы с расширением .pdf в любом месте имени файла. Если вам нужны файлы, которые система идентифицирует как PDF-файлы, нажмите зеленую кнопку «+» рядом с «Обновить», добавьте фильтр «Тип файла» «Pdf / Postscript» и нажмите «Перезагрузить», чтобы получить только актуальные PDF-файлы. введите описание изображения здесь

Один ноль
источник
2
@ WarriorIng64 ОБНОВЛЕНО
один ноль
Прекрасный. Сумасшедший я забыл, как все просто.
don.joey
-1

Простейшим способом будет:

locate *.pdf

Эта команда найдет все файлы PDF, имеющиеся в вашей системе.

Раджу
источник
2
Следите за тем, чтобы ракушки не делали магию здесь для вас. Если *.pdfрасширение распространяется на файлы в текущем рабочем каталоге, то они будут предоставлены locateкоманде, а не необработанному *.pdfаргументу.
gertvdijk
-1

Используйте команду:

ls | grep .pdf
джокер
источник