Comment créer zip/gz/tar fichiers pour si les fichiers sont plus âgés que certains jours dans UNIX ou Linux
J'ai besoin d'un fichier de script de sauvegarde (zip ou tar, gz) des anciens fichiers journaux de notre serveur unix (provoquant l'espace problème). Pourriez-vous svp m'aider à créer le zip ou les fichiers gz pour chacun des fichiers journaux dans le répertoire courant et ses sous-répertoires?
J'en ai trouvé une commande qui est de créer gz fichier pour les fichiers plus anciens, mais il ne crée un seul fichier gz pour tous les anciens fichiers. Mais j'ai besoin de personne gz fichier pour chaque fichier journal.
find /tmp/log/-mtime +180 | xargs-tar-czvPf /tmp/older_log_$(date +%F).tar.gz
Vous remerciant par avance.
OriginalL'auteur mallikgm | 2013-09-27
Vous devez vous connecter pour publier un commentaire.
Meilleure façon est
Où +3 signifie zip de tous les fichiers de plus de 3 jours.
Un moyen de le rendre exclure déjà fichiers zippés?
OriginalL'auteur Shiva
Tout d'abord, le
-mtime
argument ne vous donne pas les fichiers qui sont "vieux" de plus d'un certain montant. Plutôt, il vérifie la dernière fois que le fichier a été modifié. La date de création de fichiers n'est pas conservé dans la plupart des systèmes de fichiers. Souvent, l'heure de dernière modification est suffisante, mais il n'est pas le même que l'âge du fichier.Si vous souhaitez simplement créer un seul fichier tar pour chaque archive, utilisez -exec au lieu de transmettre les données à xargs:
Salut William Pursell, Lorsque j'exécute cette commune, il donne une erreur. find /tmp/mallik3/dir1/ -mtime +180 -type f -exec sh-c 'tar -czvPf /tmp/older_log_$0_$(date +%F).tar.gz $0' {} \; tar: /tmp/older_log_/tmp/mallik3/dir1/subOld/abcx07.log_2013-10-01.tar.gz: Ne peut open: Aucun fichier ou répertoire
Ah, oui. Vous avez besoin pour obtenir le nom de base. Réponse (bientôt ) édité.
OriginalL'auteur William Pursell
Merci beaucoup pour votre réponse.
Je l'ai eu.
OriginalL'auteur mallikgm