Если вы просто ищете имена файлов, locate
является довольно стандартным в системах Linux, хотя ваш дистрибутив может не установить его по умолчанию.
$ locate vmlinuz
/vmlinuz
/vmlinuz.old
/boot/vmlinuz-2.6.35-28-generic
/boot/vmlinuz-2.6.35-30-generic
locate
опирается на базу данных существующих файлов, которая обычно обновляется каждую ночь заданием cron, поэтому ее результаты более или менее мгновенные.
Если вам нужны результаты с точностью до секунды, вы можете вместо этого использовать find
, но это займет некоторое время, потому что она проходит через чтение файловой системы и анализирует каждый присутствующий файл.
$ find / -name \*vmlinuz\*
в конечном итоге вернет те же результаты, а также множество ошибок "отказано в разрешении", если вы не используете его как root. Обратите внимание, что первым аргументом для find
является каталог для поиска (включая подкаталоги), поэтому вы можете ограничить его только частью файловой системы, чтобы значительно ускорить процесс, если у вас есть представление о том, где могут быть целевые файлы. ,