Ти майже правий. -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(останній час доступу).