Как переместить файлы старше X в другую папку?

14

Как переместить файлы старше 30 дней из папки /storage/current/dbdumps/в /storage/archive/dbdumps?

Я старался:

find /storage/current/dbdumps/ -type f -mtime +30 -exec mv '{}' /storage/archive/dbdumps \;

но кажется недействительным в Ubuntu 11.04.

Амир Ашкенази
источник
2
что такое сообщение об ошибке?
энзотиб

Ответы:

15

Команда кажется в порядке, и в моем 11.10 это работает. Вы не пропустили косую черту в папке назначения?

find /storage/current/dbdumps/ -type f -mtime +30 -exec mv '{}' /storage/archive/dbdumps/ \;

Другая вещь, которую вы можете попробовать, это использовать /bin/mvinsted of just mv.

lpanebr
источник
5

Вы можете попробовать эту версию (работает в 11.10, я думаю, она будет работать и в других версиях :)):

find /storage/current/dbdumps/ -type f -mtime +30 -print | xargs -I {} mv "{}" /storage/archive/dbdumps
Salem
источник
1
Вы должны использовать кавычки после {} после mv, поскольку файлы могут содержать или не содержать пробелы и т. Д. Я бы xargs -I{} mv "{}" /storage/archive/dbdumps/
передал