Comment déplacer des fichiers plus anciens que X vers un autre dossier?

14

Comment déplacer des fichiers de plus de 30 jours du dossier /storage/current/dbdumps/vers /storage/archive/dbdumps?

J'ai essayé:

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

mais semble invalide dans Ubuntu 11.04.

Amir Ashkenazi
la source
2
quel est le message d'erreur?
enzotib

Réponses:

15

La commande semble correcte et dans mon 11.10 cela fonctionne. Vous n'avez pas manqué la barre oblique de fin dans le dossier de destination?

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

Vous pouvez également essayer d'utiliser /bin/mvinsted of just mv.

lpanebr
la source
5

Vous pouvez essayer cette version (fonctionne en 11.10, je suppose que cela fonctionnera aussi dans d'autres versions :)):

find /storage/current/dbdumps/ -type f -mtime +30 -print | xargs -I {} mv "{}" /storage/archive/dbdumps
Salem
la source
1
Vous devriez utiliser des guillemets autour de {} après mv, car les fichiers peuvent contenir ou non des espaces, etc. J'aurais transmis les résultats à xargs -I{} mv "{}" /storage/archive/dbdumps/
Iesus Sonesson