Я борюсь с перечислением файлов, измененных за определенный месяц (например, февраль). Вот несколько неудачных попыток:
1) Я попытался создать временные файлы и установить для них отметку времени первый раз в следующем месяце и первый раз в целевом месяце и использовал -newer в find, например:
find -newer "$from" ! -newer "$to"
Это перечисляет файлы, измененные во временном интервале ($ from, $ to], но мне нужен временной интервал [$ from, $ to) (в противном случае были бы ложные срабатывания на файлы, созданные в первую секунду следующего месяца). Перечисление файлов, измененных в феврале, является дополнительной проблемой, поскольку для этого потребуется установить одну из меток времени на самую большую в феврале, но количество дней в феврале варьируется в зависимости от того, високосный год это или нет, что требует дополнительной проверки. .
2) Если я использую ls
, я вижу много сложностей при синтаксическом анализе из-за того, что имя пользователя или группа могут содержать пробелы.
Есть ли простой и относительно переносимый способ сделать это (чтобы он работал в течение любого месяца, независимо от имен файлов и т. Д.)?