Чтобы искать файлы в Linux, не встречая ошибок «отказано в доступе», и фильтровать их по дате, вы можете использовать различные методы. Вот несколько примеров с фрагментами кода:
Метод 1: использование команды find
Команда find— мощный инструмент для поиска файлов в Linux. Чтобы искать файлы без ошибок «отказано в доступе» и фильтровать их по дате, вы можете использовать параметры -userи -newerXY.
find /path/to/search -user your_username -newermt "YYYY-MM-DD"
Замените /path/to/searchна каталог, в котором вы хотите выполнить поиск, ваше_имя_пользователяна свое имя пользователя Linux и "ГГГГ-ММ-ДД"с желаемой датой.
Метод 2: использование командыlocate
Команда locate— еще один полезный инструмент для поиска файлов. Хотя он не поддерживает фильтрацию по дате напрямую, вы можете комбинировать его с другими командами, такими как grep, для достижения желаемого результата.
locate -r "pattern" | grep -v "/access_denied_directory/" | xargs ls -l --time- | awk '$6 >= "YYYY-MM-DD"'
Замените "шаблон"на имя файла или шаблон, который вы хотите найти, а "ГГГГ-ММ-ДД"на желаемую дату.
Метод 3: использование пакета mlocate
Пакет mlocateпредоставляет расширенную версию команды locate. Он создает индексированную базу данных имен файлов, что ускоряет поиск. Вы можете установить его с помощью менеджера пакетов вашего дистрибутива Linux.
sudo updatedb
locate -b "pattern" | xargs ls -l --time- | awk '$6 >= "YYYY-MM-DD"'
Замените "шаблон"на имя файла или шаблон, который вы хотите найти, а "ГГГГ-ММ-ДД"на желаемую дату.