Skip to main content

Как найти файл в Linux с помощью командной строки

Быстрый поиск файлов с помощью командной строки ( CMD ). С сохранением в файл и буфер обмена. (Апрель 2025)

Быстрый поиск файлов с помощью командной строки ( CMD ). С сохранением в файл и буфер обмена. (Апрель 2025)
Anonim

В этом руководстве вы узнаете, как использовать Linux для поиска файла или серии файлов.

Вы можете использовать файловый менеджер, поставляемый с дистрибутивом Linux, для поиска файлов. Если вы привыкли к Windows, то файловый менеджер сродни Windows Explorer. Он содержит пользовательский интерфейс с серией папок, которые при нажатии показывают подпапки в этих папках и любые файлы, которые содержатся внутри.

Большинство файловых менеджеров предоставляют функцию поиска и метод фильтрации списка файлов.

Лучший способ поиска файлов - использовать командную строку Linux, потому что для поиска файла доступно еще много методов, чем можно было бы включить в графический инструмент.

Как открыть окно терминала

Чтобы искать файлы с помощью командной строки Linux, вам нужно открыть окно терминала.

Существует множество способов открыть окно терминала. Один из способов, который обязательно подходит для большинства систем Linux, - это одновременно нажать клавиши CTRL, ALT и T. Если это не позволяет использовать меню в рабочей среде Linux, чтобы найти редактор терминалов.

Самый простой способ найти файл

Вызывается команда, используемая для поиска файлов.находить.

Вот основной синтаксис команды Find.

находить

Отправной точкой является папка, в которую вы хотите начать поиск. Чтобы начать поиск всего диска, вы должны ввести следующее:

находить /

Если, однако, вы хотите начать поиск папки, в которой вы сейчас находитесь, вы можете использовать следующий синтаксис:

находить .

Как правило, при поиске вам нужно искать по имени, поэтому для поиска файла с именем myresume.odt на всем диске вы должны использовать следующий синтаксис:

Найти / -name myresume.odt

  • Первая часть команды find - это, очевидно, слово find.
  • Вторая часть - это то, с чего начать поиск.
  • Следующая часть - это выражение, которое определяет, что искать.
  • Наконец, последняя часть - это имя того, что нужно найти.

Где начать поиск

Как уже упоминалось в предыдущем разделе, вы можете выбрать любое место в файловой системе для начала поиска. Например, если вы хотите найти текущую файловую систему, вы можете использовать полную остановку следующим образом:

находить . -name

Вышеупомянутая команда будет искать файл или папку, называемую игрой, во всех папках в текущей папке. Вы можете найти имя текущей папки, используя команду pwd.

Если вы хотите выполнить поиск по всей файловой системе, вам нужно начать с корневой папки следующим образом:

Найти / -name

Вероятно, результаты, возвращенные указанной выше командой, будут отображать разрешение, отклоненное для многих возвращенных результатов.

Вероятно, вам нужно будет поднять свои права с помощью команды sudo или переключиться на учетную запись администратора, используя команду su.

Исходная позиция может быть буквально в любом месте вашей файловой системы. Например, чтобы найти домашнюю папку, выполните следующие действия:

найти игру ~ -name

Тильда - это метасимвол, обычно используемый для обозначения домашней папки текущего пользователя.

Выражения

Наиболее распространенным выражением, которое вы будете использовать, является -название, Выражение -name позволяет вам искать имя файла или папки.

Существуют, однако, другие выражения, которые вы можете использовать следующим образом:

  • -amin n - К последнему сообщению
  • -anewer - Последний доступ к файлу был последним, чем был изменен
  • -time n - Файл был последний раз доступным больше n дней назад
  • -cmin n - Файл был изменен n минут назад
  • -cnewer - Файл был последним изменен совсем недавно, чем файл был изменен
  • -ctime n - Файл был изменен больше, чем n дней назад
  • -empty - Файл пуст
  • -исполнимый - Файл исполняемый
  • -ложный - Всегда ложь
  • -fstype type - Файл находится в указанной файловой системе
  • -gid n - Файл принадлежит группе с идентификатором n
  • -группа groupname - Файл принадлежит названной группе
  • шаблон -имя - Искать символическую строку, но игнорировать регистр
  • -имя шаблона - Искать файл, но игнорировать регистр
  • -inum n - Поиск файла с указанным узлом
  • -ipath path - Искать путь, но игнорировать регистр
  • выражение -iregex - Искать выражение, но игнорировать регистр
  • -links n - Поиск файла с указанным числом ссылок
  • имя-имя - Поиск символической ссылки
  • -mmin n - Данные файла были модифицированы n мин. Назад
  • -mtime n - Данные файла были в последний раз изменен n дней назад
  • имя-имя - Поиск файла с указанным именем
  • -Новое имя - Искать файл, отредактированный более недавно, чем файл
  • -nogroup - Поиск файла без идентификатора группы
  • -nouser - Поиск файла без подключения пользователя к нему
  • путь -path - Поиск пути
  • -удобочитаемый - Поиск файлов, которые можно читать
  • -regex pattern - Поиск файлов, соответствующих регулярному выражению
  • Тип типа - Поиск определенного типа
  • -uid uid - Число файлов с числовым идентификатором пользователя совпадает с uid
  • -имя пользователя - Файл принадлежит указанному пользователю
  • -writable - Поиск файлов, которые можно записать в

Как найти файлы, доступные больше, чем определенное количество дней назад

Представьте, что вы хотите найти все файлы в вашей домашней папке, доступ к которым более 100 дней назад. Возможно, вы захотите сделать это, если хотите сделать резервную копию и удалить старые файлы, к которым вы не обращаетесь регулярно.

Для этого выполните следующую команду:

найти ~ -atime 100

Как найти пустые файлы и папки

Если вы хотите найти все пустые файлы и папки в своей системе, используйте следующую команду:

find / -empty

Как найти все исполняемые файлы

Если вы хотите найти все исполняемые файлы на вашем компьютере, используйте следующую команду:

find / -exec

Как найти все читаемые файлы

Чтобы найти все доступные для чтения файлы, используйте следующую команду:

find /readread

Узоры

При поиске файла вы можете использовать шаблон. Например, возможно, вы ищете все файлы с расширением mp3.

Вы можете использовать следующий шаблон:

find / -name * .mp3

Как отправить результат из поиска Найти команду в файл

Основная проблема с командой find заключается в том, что иногда она может возвращать слишком много результатов, чтобы смотреть за один раз.

Вы можете передать вывод команде хвоста или вывести строки в файл следующим образом:

find / -name * .mp3 -fprint nameoffiletoprintto

Как найти и выполнить команду против файла

Представьте, что вы хотите одновременно искать и редактировать файл.

Вы можете использовать следующую команду:

find / -name filename -exec nano '{}' ;

Вышеупомянутая команда ищет файл с именем filename, а затем запускает редактор nano для файла, который он находит.

Резюме

Команда find очень мощная. В этом руководстве показано, как искать файлы, но есть огромное количество доступных опций, и чтобы понять их все, вы должны ознакомиться с руководством по Linux.

Вы можете сделать это, выполнив следующую команду в терминале:

человек находит