LXF96:Коротко про
|
|
|
Поиск файлов
Никогда больше не теряйте свои данные.
Linux имеет два главных инструмента для поиска файлов: Locate и Find. Первый держит базу данных о файлах вашей системы. Такой поиск быстрее, но ограничивается файлами, содержащимися в базе на момент последнего обновления. Большинство дистрибутивов устанавливают скрипт cron для поддержки актуальности базы файлов. Поиск ведется только по именам файлов. Используйте
locate некоторый_файл locate –i некоторый_файл
(Второй вариант – для поиска, нечувствительного к регистру.)
Альтернатива – Find, выполняющая поиск непосредственно в файловой системе. Это гораздо медленнее, но зато информация самая свежая. Здесь также предоставляется возможность выбрать, какие директории не включать в поиск, и искать не только по имени:
find -name '*какой_то_файл*' find /usr -iname '*другой_файл*' find /usr -maxdepth 2 -iname '*что_за_файл*'
Первая строка выполняет поиск в текущей директории, заглядывая и в поддиректории. Вторая выполняет нечувствительный к регистру поиск, начиная с директории /usr. Третья делает то же самое, но ограничивает глубину «погружения» двумя поддиректориями.
Благодаря большому числу опций, Find является более гибким вариантом, а Locate великолепен для быстрого поиска. Вы можете пропустить вывод Locate через grep для поиска определенных директорий:
locate -i мой_файл | grep /home/
Также заметим, что Locate выполняет поиск в подстроках, а Find ищет точные совпадения.
А вы когда нибудь задумывались, где программа сохраняет свои файлы конфигурации? Выполните touch /tmp/now, затем запустите программу, измените настройки и выйдите. Далее наберите:
find ~ -newer /tmp/now
для поиска всех измененных файлов – сюда попадут файлы конфигурации программы и кое-какие другие.