У меня очень большая файловая система со структурой папок, которая может быть 4 уровня глубокой. У меня есть файл (т. Е. Test.log), который может быть где угодно в этой структуре папок. Вместо того, чтобы рекурсивно перемещаться по всей структуре папок, я хочу применить некоторый выбор и только папки поиска, которые были изменены за последние 4 часа. Как использовать траверсу Groovy для выполнения такой операции? БлагодаряНайти файл в каталогах, которые были изменены за последний час
1
A
ответ
0
Может быть, это будет работать (нет возможности проверить):
import static groovy.io.FileType.*
import static groovy.io.FileVisitResult.*
import groovy.time.TimeCategory
currentDate = new Date()
use(TimeCategory) {
before4hours = currentDate - 4.hours
}
def toTravserse = new File('<SOME_DIR>')
toTravserse.traverse(
type : FILES,
maxDepth : 4,
nameFilter : ~/test.log/,
preDir : { if (it.lastModified() < before4hours.time) return SKIP_SUBTREE },
) { println "Found: $it" }
взглянуть на docs.
Смежные вопросы
- 1. Найти файлы, которые недавно были изменены
- 2. Найти файлы, которые были изменены рекурсивно
- 3. Найти записи, созданные за последний час
- 4. Как найти Представления MySQL или Триггеры, которые были добавлены или обновлены за последний час?
- 5. Выделите строки, которые были изменены
- 6. Как получить список таблиц, которые были вставлены или обновлены за последний час в sql-сервере
- 7. Копирование/Тарринг Файлы, которые были изменены за последние 14 дней
- 8. Найти, сколько строк было создано за минуту за последний час
- 9. Получение данных за последний час
- 10. Найти текстовые строки, которые были изменены в файлах HTML
- 11. Сценарии: найти файлы были изменены за последние 24 часа
- 12. Все вопросы JIRA, которые изменили статус за последний час
- 13. Grep сообщения за последний час
- 14. найти файлы, которые были изменены за последние 30 минут в Linux
- 15. Bash - Как найти файлы, которые не были изменены в течение определенного периода времени?
- 16. Список файлов, которые были изменены/изменены сегодня одним пользователем
- 17. Список с элементами за последний час
- 18. Сохранение переменных, которые были изменены вне класса
- 19. Как обрабатывать только файлы, которые были изменены?
- 20. Получение номеров строк, которые были изменены
- 21. Объединение файлов, которые были изменены двумя разработчиками
- 22. Объекты, которые были изменены, не будут перерисовываться
- 23. Обновление атрибутов/полей, которые были изменены PHP
- 24. Bash отображает обычные файлы, которые были изменены
- 25. SQL-аудит данных, которые были «изменены» напрямую
- 26. Запрос для поиска таблиц, измененных за последний час
- 27. Получить только строки, которые были изменены
- 28. Magento - искать товары, созданные за последний час
- 29. Список файлов, которые были изменены до запуска программы в java
- 30. CakePHP: Поиск записей за последний час
есть ли мой ответ работа? Если все в порядке, пожалуйста, примите это. – Opal
Извините за задержку ... пытался реализовать решение. Проблема, которую я испытываю, заключается в том, что последний модифицированный атрибут в файле - это длинный тип данных. У меня возникают проблемы с преобразованием TimeCategory в длинный тип данных, чтобы он мог использоваться при сравнении. – JBDenver
Я отредактировал ответ. Используйте «время» на дату, чтобы сравнить его с 'lastModified()'. – Opal