- Поиск в Linux с помощью команды find
- Общий синтаксис
- Описание опций
- Примеры использования find
- Поиск файла по имени
- Поиск по дате
- По типу
- Поиск по правам доступа
- Поиск файла по содержимому
- С сортировкой по дате модификации
- Лимит на количество выводимых результатов
- Поиск с действием (exec)
- Чистка по расписанию
- Как находить файлы на компьютере
- Содержание:
- Как в Windows найти файл по его имени?
- Как найти файл в Windows 7 по расширению?
- Как найти файл, если не помните и его расширение?
- Правила поиска файлов на компьютере по объёму
- Как найти скрытые файлы в ОС Windows
- Поиск файлов по их содержанию
- Total Commander для удобного поиска необходимых файлов
- Еще больше интересной и полезной информации
Поиск в Linux с помощью команды find
Утилита find представляет универсальный и функциональный способ для поиска в Linux. Данная статья является шпаргалкой с описанием и примерами ее использования.
Общий синтаксис
— путь к корневому каталогу, откуда начинать поиск. Например, find /home/user — искать в соответствующем каталоге. Для текущего каталога нужно использовать точку «.».
— набор правил, по которым выполнять поиск.
* по умолчанию, поиск рекурсивный. Для поиска в конкретном каталоге можно использовать опцию maxdepth.
Описание опций
Опция | Описание |
---|---|
-name | Поиск по имени. |
-iname | Регистронезависимый поиск по имени. |
-type | |
-size | Размер объекта. Задается в блоках по 512 байт или просто в байтах (с символом «c»). |
-mtime | Время изменения файла. Указывается в днях. |
-mmin | Время изменения в минутах. |
-atime | Время последнего обращения к объекту в днях. |
-amin | Время последнего обращения в минутах. |
-ctime | Последнее изменение владельца или прав на объект в днях. |
-cmin | Последнее изменение владельца или прав в минутах. |
-user | Поиск по владельцу. |
-group | По группе. |
-perm | С определенными правами доступа. |
-depth | Поиск должен начаться не с корня, а с самого глубоко вложенного каталога. |
-maxdepth | Максимальная глубина поиска по каталогам. -maxdepth 0 — поиск только в текущем каталоге. По умолчанию, поиск рекурсивный. |
-prune | Исключение перечисленных каталогов. |
-mount | Не переходить в другие файловые системы. |
-regex | По имени с регулярным выражением. |
-regextype | Тип регулярного выражения. |
-L или -follow | Показывает содержимое символьных ссылок (симлинк). |
-empty | Искать пустые каталоги. |
-delete | Удалить найденное. |
-ls | Вывод как ls -dgils |
Показать найденное. | |
-print0 | Путь к найденным объектам. |
-exec <> \; | Выполнить команду над найденным. |
-ok | Выдать запрос перед выполнением -exec. |
Также доступны логические операторы:
Оператор | Описание |
---|---|
-a | Логическое И. Объединяем несколько критериев поиска. |
-o | Логическое ИЛИ. Позволяем команде find выполнить поиск на основе одного из критериев поиска. |
-not или ! | Логическое НЕ. Инвертирует критерий поиска. |
Полный набор актуальных опций можно получить командой man find.
Примеры использования find
Поиск файла по имени
1. Простой поиск по имени:
find / -name «file.txt»
* в данном примере будет выполнен поиск файла с именем file.txt по всей файловой системе, начинающейся с корня /.
2. Поиск файла по части имени:
* данной командой будет выполнен поиск всех папок или файлов в корневой директории /, заканчивающихся на .tmp
3. Несколько условий.
а) Логическое И. Например, файлы, которые начинаются на sess_ и заканчиваются на cd:
find . -name «sess_*» -a -name «*cd»
б) Логическое ИЛИ. Например, файлы, которые начинаются на sess_ или заканчиваются на cd:
find . -name «sess_*» -o -name «*cd»
в) Более компактный вид имеют регулярные выражения, например:
find . -regex ‘.*/\(sess_.*cd\)’
* где в первом поиске применяется выражение, аналогичное примеру а), а во втором — б).
4. Найти все файлы, кроме .log:
find . ! -name «*.log»
* в данном примере мы воспользовались логическим оператором !.
Поиск по дате
1. Поиск файлов, которые менялись определенное количество дней назад:
find . -type f -mtime +60
* данная команда найдет файлы, которые менялись более 60 дней назад.
2. Поиск файлов с помощью newer. Данная опция доступна с версии 4.3.3 (посмотреть можно командой find —version).
а) дате изменения:
find . -type f -newermt «2019-11-02 00:00»
* покажет все файлы, которые менялись, начиная с 02.11.2019 00:00.
find . -type f -newermt 2019-10-31 ! -newermt 2019-11-02
* найдет все файлы, которые менялись в промежутке между 31.10.2019 и 01.11.2019 (включительно).
б) дате обращения:
find . -type f -newerat 2019-10-08
* все файлы, к которым обращались с 08.10.2019.
find . -type f -newerat 2019-10-01 ! -newerat 2019-11-01
* все файлы, к которым обращались в октябре.
в) дате создания:
find . -type f -newerct 2019-09-07
* все файлы, созданные с 07 сентября 2019 года.
find . -type f -newerct 2019-09-07 ! -newerct «2019-09-09 07:50:00»
* файлы, созданные с 07.09.2019 00:00:00 по 09.09.2019 07:50
По типу
Искать в текущей директории и всех ее подпапках только файлы:
* f — искать только файлы.
Поиск по правам доступа
1. Ищем все справами на чтение и запись:
find / -perm 0666
2. Находим файлы, доступ к которым имеет только владелец:
find / -perm 0600
Поиск файла по содержимому
find / -type f -exec grep -i -H «content» <> \;
* в данном примере выполнен рекурсивный поиск всех файлов в директории / и выведен список тех, в которых содержится строка content.
С сортировкой по дате модификации
find /data -type f -printf ‘%TY-%Tm-%Td %TT %p\n’ | sort -r
* команда найдет все файлы в каталоге /data, добавит к имени дату модификации и отсортирует данные по имени. В итоге получаем, что файлы будут идти в порядке их изменения.
Лимит на количество выводимых результатов
Самый распространенный пример — вывести один файл, который последний раз был модифицирован. Берем пример с сортировкой и добавляем следующее:
find /data -type f -printf ‘%TY-%Tm-%Td %TT %p\n’ | sort -r | head -n 1
Поиск с действием (exec)
1. Найти только файлы, которые начинаются на sess_ и удалить их:
find . -name «sess_*» -type f -print -exec rm <> \;
* -print использовать не обязательно, но он покажет все, что будет удаляться, поэтому данную опцию удобно использовать, когда команда выполняется вручную.
2. Переименовать найденные файлы:
find . -name «sess_*» -type f -exec mv <> new_name \;
find . -name «sess_*» -type f | xargs -I ‘<>‘ mv <> new_name
3. Вывести на экран количество найденных файлов и папок, которые заканчиваются на .tmp:
find . -name «*.tmp» | wc -l
4. Изменить права:
find /home/user/* -type d -exec chmod 2700 <> \;
* в данном примере мы ищем все каталоги (type d) в директории /home/user и ставим для них права 2700.
5. Передать найденные файлы конвееру (pipe):
find /etc -name ‘*.conf’ -follow -type f -exec cat <> \; | grep ‘test’
* в данном примере мы использовали find для поиска строки test в файлах, которые находятся в каталоге /etc, и название которых заканчивается на .conf. Для этого мы передали список найденных файлов команде grep, которая уже и выполнила поиск по содержимому данных файлов.
6. Произвести замену в файлах с помощью команды sed:
find /opt/project -type f -exec sed -i -e «s/test/production/g» <> \;
* находим все файлы в каталоге /opt/project и меняем их содержимое с test на production.
Чистка по расписанию
Команду find удобно использовать для автоматического удаления устаревших файлов.
Открываем на редактирование задания cron:
0 0 * * * /bin/find /tmp -mtime +14 -exec rm <> \;
* в данном примере мы удаляем все файлы и папки из каталога /tmp, которые старше 14 дней. Задание запускается каждый день в 00:00.
* полный путь к исполняемому файлу find смотрим командой which find — в разных UNIX системах он может располагаться в разных местах.
Источник
Как находить файлы на компьютере
Содержание:
Каждый из нас периодически сталкивается с необходимостью найти какой-то файл на компьютере. Крайне обидно, когда на работу с файлом потребовалась не одна неделя, но из-за разных манипуляций на компьютере мы его лишились. И одним прекрасным утром у нас возникает паника из-за потери необходимого файла, начинаются стремительные поиски по разным папкам, но успеха они не приносят. И возникает вполне естественный вопрос, как найти файл на компьютере.
Прежде всего, не нужно поддаваться панике, постарайтесь успокоиться. Скорее всего, файл всё так же дожидается в памяти компьютера, никто его красть не планировал. Для его нахождения достаточно правильно использовать поиск файлов в Windows. Или вам всегда сможет помочь скорая компьютерная помощь в Москве.
Прежде всего, внимательно ознакомьтесь с содержимым корзины на компьютере – если файла здесь нет, переходим к другим вариантам поиска.
Как в Windows найти файл по его имени?
Если файл ценен, то, скорее всего, помните его название – для этого переходим в поле «Поиск» окна «Компьютер», вводим название и нажимаем Enter. Поиск компьютера будет работать по всему жесткому диску. Если название файла состоит из нескольких слов, а сами помните только одно из них – введите его, для поиска этого будет достаточно.
Как найти файл в Windows 7 по расширению?
Если забыли название файла, поиск немного усложняется. Но решить проблему можно благодаря рабочему расширению, по которому и будет вестись поиск. Расширения файлов — разработаны, чтобы определять тип файлов. Каждый из файлов относится к определенной программе, что позволяет ОС Windows учитывать – какая программа поддерживает работу с ним. Расширение отделено от названия точкой, к примеру, Dokumenty.zip. Здесь расширение «.zip» говорит нам об архивном файле.
Следовательно, если потеряли, к примеру, разработанный документ в Word, то нужно искать файл «.docx». Картинки или фотографии можно найти по расширению «.jpg». С подробной привязкой расширений к программам и файлам можно ознакомиться в Интернете.
Как найти файл, если не помните и его расширение?
Вполне вероятно, что на компьютере есть еще и другие такие файлы – поэтому просто ознакомьтесь с их расширением. Windows 7 и Windows 8 предполагают скрытые расширения файлов, поэтому увидеть их не удастся.
Для просмотра расширений нужно перейти в «Панель управления», далее выбираем «Мелкие значки». Переходим «Параметры папок» — «Вид» — «Скрывать расширения для зарегистрированных типов файлов» – здесь нужно снять галочку, нажать «Применить». После этого сразу заметим – на компьютере у многих файлов появились расширения после их названий.
После понимания расширения потерянного файла, к примеру, «.zip», остается лишь ввести его в поле «Поиск» и нажать Enter. Поиск на компьютере нам сразу выведет список файлов с данным расширением. Из них уже и выбираем нужный.
Правила поиска файлов на компьютере по объёму
Многие пользователи могут возразить – видеофайлы могут иметь многие расширения, что предпринять для поиска в таком случае? Один из наших клиентов однажды потерял пропавший фильм, попросил проконсультировать по данному вопросу.
Мы обратили внимание, что на компьютере пользователя все фильмы оказались в формате «.avi». Казалось бы – нужно просто ввести расширение в поиск, и всё сразу получится. Но не всё оказалось не так просто, найти файл на компьютере так просто не получалось. Поэтому было принято решение о поиске нужного файла по объему.
Объем всех видеофайлов клиента составлял примерно 1,45 ГБ. Поэтому вполне резонно было предположить, что аналогичный объем был и у потерянного файла. Следовательно, достаточно было выполнить простую процедуру System.Size:>1000МБ, для поиска в памяти компьютера файлов объемом свыше 1 Гб.
По результатам поиска появился список из 20 видеофайлов, в их числе удалось найти файл вовсе без расширения. Но уже по самому названию можно было догадаться – это именно тот пропавший фильм. Оставалось лишь добавить файлу расширение «.avi» – и вновь можно было наслаждаться просмотром видео. Позже удалось понять – над нашим клиентом просто пошутили знакомые, которые и убрали расширение.
Как найти скрытые файлы в ОС Windows
Порой Windows присваивает некоторым файлам атрибут «Скрытый» — в результате вирусных атак либо системного сбоя. Из-за этого файлы увидеть не удастся и найти даже через «Поиск», если напротив пункта «Показывать скрытые файлы и папки» не стоит галочка. Хотя с самими файлами ничего не случится.
Чтобы скрытые файлы сделать видимыми, открываем «Панель управления», далее переходим к пунктам «Параметры папок» — «Вид». Напротив пункта «Показывать скрытые файлы и папки» ставим галочку и нажимаем OK. После этого иногда потерянный файл сразу находится на рабочем столе. Либо можно будет его найти с помощью поиска по расширению либо названию, как мы уже рассматривали раньше.
Поиск файлов по их содержанию
К примеру, при потере текстового документов из Microsoft Office Word, блокнота, OpenOffice либо других программ. При работе с текстом всё равно часть содержания откладывается в памяти пользователя. Поэтому в поиске вводим часть текста, нажимаем Enter и находим нужный документ.
Хотя следует иметь ввиду, что на старом и медленном компьютере процесс поиска может занять продолжительное время. Модернизация ПК — вот о чем можно задуматься, пока ожидаешь результат.
Total Commander для удобного поиска необходимых файлов
Популярный и удобный файловый менеджер, с помощью которого возможен быстрый поиск файлов на компьютере по нескольким параметрам одновременно – расширение, название, содержание. Для этого в программе нужно задать место поиска (к примеру, C:), после чего переходим в «Команды» и «Поиск файлов» (или нажимаем комбинацию горячих клавиш Alt+F7).
Для поиска по расширению либо названию эти данные вводим в поле «Искать файлы» — остается лишь нажать «Начать поиск».
Чтобы найти необходимые файлы по содержанию, в поле «С текстом» вводим часть текста, которую помните – не забудьте поставить галочку напротив. После нажатия «Начать поиск» Total Commander быстро найдет файлы на компьютере, удовлетворяющие параметрам запроса.
Если у вас возникли трудности и не получается найти потерявшийся файл, то обращайтесь к нам в компанию. Мы с радостью поможем вам.
Еще больше интересной и полезной информации
Хотите поделиться с другом тем, что изображено на экране вашего…
В данной статье мы подробно рассмотрим, такое форматирование.…
Очередная наша статья поможет геймерам открыть порт 25565 и создать…
В данной статье речь пойдет о планшетах. Разберем вопросы: какой…
Источник