Je suis à la recherche d'une solution pour déplacer des fichiers qui datent d'un an à partir d'aujourd'hui. Ma partition de journal est saturée, mais je ne peux pas les supprimer. Ils sont nécessaires depuis très longtemps. Quoi qu'il en soit, une solution que j'ai trouvée est:
find /sourcedirectory -mtime 365 -exec mv "{}" /destination/directory/ \;
Est-ce que cela fonctionnerait? Demander à cause de " -mtime 365 " cela déplacerait-il les fichiers qui sont plus anciens d'un an vers un nouvel emplacement?
Merci!
mtime
c'est le temps de modification (qui ressemble à ce que vous voulez probablement - la plupart du temps). Si ces journaux sont lus / consultés souvent, vous voudrez peut-être les utiliser-atime
(dernière heure d'accès).exec
instruction. Voir la page de manuel pourfind
.Soyez prudent lorsque vous utilisez les solutions ci-dessus, je les ai utilisées et j'ai fini par déplacer tous les fichiers dans tous les sous-dossiers !!!!
Cette commande déplace tous les fichiers du répertoire / source et tous les sous-dossiers du répertoire source:
À la place, utilisez l'option -maxdepth 1 pour uniquement les fichiers dans / sourcedirectory
la source
-type f
. Vouliez-vous plutôt dire que les sous-dossiers sont déplacés mais que leur contenu reste dans les sous-dossiers au lieu d'en être déplacé ou ...?Vous pouvez utiliser cette commande et spécifier que vous ne recherchez que les fichiers, pas le répertoire, et que le fichier a plus d'un an
la source
rm
? Votre commande supprime les fichiers journaux et éventuellement le répertoire de destination.Vous pouvez utiliser la commande ci-dessous avec atime si vous accédez souvent aux fichiers
la source
Le correct serait de supprimer la barre oblique de fin de
/sourcedirectory/
la source
find: missing argument
erreur, mais je suis d'accord pour dire que supprimer la barre oblique de fin/sourcedirectory
est correct.