Последнее обновление:
Если вы пытаетесь найти файл в Linux, есть несколько способов сделать это, в том числе с помощью терминала или экранных приложений. Это руководство покажет вам, как это сделать.
Независимо от того, насколько тщательно вы относитесь к управлению файлами, в конечном итоге вы обнаружите, что задаетесь вопросом, где находится тот или иной документ. Это верно для Mac, Windows и даже Linux.
Как искать файл в Linux? Как оказалось, операционная система имеет несколько очень мощных встроенных инструментов для поиска файлов. Вот что вам нужно знать.
Как найти файл в Linux из командной строки
Самый мощный метод поиска файлов в Linux — использование командной строки. Как только В Windows есть найти команда, так же как и линукс. UNIX-команда найти может очень легко найти любой тип файла, который вы ищете. Выполнено правильно, найти может даже заглянуть внутрь ваших файлов, чтобы идентифицировать определенные текстовые строки, и вы можете сузить свой поиск до тех файлов, которые были недавно изменены.
Основное использование
Основное использование find выглядит следующим образом:
найти /home/jeff -name «*.jpg»
Эта команда будет искать в моем домашнем каталоге все файлы, оканчивающиеся на .jpg. Однако с помощью команды можно сделать гораздо больше.
Переход по символическим ссылкам
По умолчанию найти Команда будет игнорировать символические ссылки. Однако следующая команда будет следовать этим ссылкам:
найти -O3 -L /var/www/ -имя «*.html»
В приведенном выше примере команда выведет список всех HTML-файлов в /var/www дерево каталогов.
Поиск пустых файлов
Теперь предположим, что вы хотите идентифицировать все пустые файлы в каталоге. Следующая команда сделает именно это:
найти. -тип f -пустой.
Ключевым здесь является -тип а также -пустой параметры, используемые вместо -имя флаг в предыдущих примерах.
Дополнительные примеры
Давайте рассмотрим еще один простой пример, который вернет файлы, измененные за предыдущие 6 дней.
find /home -user randomperson -mtime 6 -iname "*.db"
В этой команде все файлы, заканчивающиеся на .дб попасть в список, игнорируя регистр текста, но только если файлы были изменены в течение последних 6 дней пользователем с именем случайный человек.
Это выполнение возвращает все файлы в данном каталоге, измененные за последние 11 дней.
Полезные параметры и оптимизации для поиска файлов Linux
Дополнительные флаги могут управлять порядком найти применяет свои поисковые тесты. По умолчанию, найти сначала фильтрует результаты поиска по имени файла, прежде чем запускать какие-либо другие тесты. Этот флаг будет -О1, но на самом деле нет причин включать его.
Если вы пройдете -О2 флаг, найти фильтрует по имени файла, а затем по типу файла. Третий выбор, -О3, автоматически переупорядочивает поиск на основе эффективного использования ресурсов и вероятности возврата релевантных результатов.
Вы можете изменить больше поведения по умолчанию, используя эти параметры:
- -максимальная глубина X: поиск в указанном каталоге и его подкаталогах на максимальную глубину Икс.
- -инаме: ищет файлы, игнорируя заглавные буквы.
- -нет: выдает только те результаты, которые не соответствуют указанному тестовому сценарию.
- -тип ф: ищет только файлы
- -тип д: ищет только каталоги
- -mtime X: возвращает только те файлы, которые были изменены в предыдущем Икс дней.
Использование Grep для поиска файлов на основе содержимого
Используется самостоятельно, найти будет фильтровать ваши файлы и каталоги только на основе имен файлов и метаданных. Однако можно копнуть еще глубже и использовать другую команду Linux для поиска файлов на основе того, что они содержат.
Инструмент для этого проверенный временем grep команда. Вот как это работает.
найти. -type f -exec grep "для экземпляра" '{}' \; -Распечатать.
Эта команда просматривает каждый файл (-тип ф) в текущем дереве каталогов (отмечено . в команде). Далее он запускается grep "например" в каждом из этих файлов, печатая те, которые содержат например.
В этом примере найти команда возвращает любые файлы, содержащие текст «Hello»
В приведенной выше команде фигурные скобки ({}) являются заполнителем для результатов файлов, возвращаемых найти команда. Они помещаются в одинарные кавычки (’), чтобы предотвратить отправку grep неправильное имя файла.
То -exec команда заканчивается точкой с запятой (;), который нуждается в побеге (\;), поэтому Linux не пытается интерпретировать его как другую команду или параметр.
Использование Exec для продвижения результатов поиска на один шаг вперед
Теперь, когда вы знаете, как отправить найти приводит к другой команде, используя -exec, вам будет интересно узнать, что вы можете сделать гораздо больше, чем просто grep ваши результаты поиска. На самом деле, эта возможность позволяет легко и быстро массово изменять файлы.
найти. -name "rc.conf" -exec chmod o+r '{}' \;
Выпущено пользователем root в /etc каталог, приведенная выше команда будет искать все файлы с именем rc.conf. Это изменит разрешения для каждого из этих файлов, чтобы дать владельцу файла права на чтение (chmod о+р).
Иметь ввиду, -exec будет запускаться из корневого каталога вашей установки Linux. Если вы предпочитаете запускать дополнительную команду из каталога, содержащего соответствующий файл, используйте -execdir вместо.
По умолчанию, -exec а также -execdir будут продолжать работать без перерыва самостоятельно. Если вы предпочитаете видеть подсказки перед выполнением второй командой каких-либо действий, замените параметры на -Ok или -окдир, соответственно.
С использованием -Ok флаг, найти подскажет, прежде чем предпринимать какие-либо действия с файлами, соответствующими параметрам поиска
Чтобы действительно максимально использовать найти, крайне важно прочитайте ручную запись для команды.
Как искать файл в Linux с помощью графического интерфейса
Многие файловые менеджеры с графическим интерфейсом для Linux также поддерживают поиск. В Ubuntu вы можете искать определенные файлы, используя Файлы заявление. Просто щелкните значок папки в Dock, а затем увеличительное стекло.
Этот инструмент с графическим интерфейсом позволяет вам фильтровать по типу файла и времени последнего обращения к файлу или его изменения. Чего у вас нет с этой опцией, так это возможности быстро запускать другие команды в результатах поиска.
Изучите все тонкости Linux
Если вы новичок в операционной системе Linux или используете ее уже много лет, вы всегда можете освежить свои навыки. Теперь, когда вы знаете, как искать файл в файле в Linux, может быть полезно уметь пользоваться SCP для передачи файла на другую машину.
Если вы хотите ограничить доступ к файлам, вам нужно список пользователей в Linux первый.
Как очистить кэш Google Chrome, файлы cookie и историю просмотров
Chrome отлично сохраняет вашу историю посещенных страниц, кеш и файлы cookie, чтобы оптимизировать работу вашего браузера в Интернете. Ее, как...