Ты почти прав. -mtime 365
будут все файлы, которым ровно 365 дней. Вы хотите те, которые 365 дней или более, что означает добавление +
перед номером, как это -mtime +365
.
Возможно, вас также заинтересует -maxdepth 1
флаг, который не позволяет вам перемещать элементы в подкаталогах.
Если вы хотите быть уверены, что перемещаете только файлы, а не каталоги, добавьте -type f
в строку.
В конце строки мы добавляем, \;
чтобы find
знать, что это конец команды, которую мы выполняем.
Итак, строка должна быть:
find /sourcedirectory -maxdepth 1 -mtime +365 -type f -exec mv "{}" /destination/directory/ \;
Чтобы быть в безопасности, начните с простого выполнения команды ls -l вместо mv. Таким образом, вы можете заранее проверить, что получаете именно те файлы, которые вам нужны, прежде чем перезапускать его с помощью mv, например так:
find /sourcedirectory -maxdepth 1 -mtime +365 -type f -exec ls -l {} \;
mtime
это время Модификации (которое звучит примерно так, как вы, вероятно, хотите - большую часть времени это происходит). Если эти журналы часто читаются / используются, возможно, вы захотите их использовать-atime
(время последнего доступа).