1 votes

script pour tout supprimer, MAIS conserver un dernier fichier de sauvegarde de tous les sous-répertoires.

Le script suivant fonctionne pour un seul dossier, mais je veux itérer dans tous les sous-répertoires.

ls /home/user/Desktop/cron_database_hourly/*/*_[012][0-9]*.zip | head -n -1 | \
   while read -r f; do rm "$f"; done

0voto

porto alet Points 315

Vous pourriez probablement vous en sortir avec quelque chose comme (non testé) -

for each in `find -type d /home/usr/Desktop/cron_database/hourly`
do
   ls -t $each/_[012][0-9]*.zip | head -n -1 | \ while read -r f; 
       do 
           rm "$f" 
      done
done

la boucle "for each" trouvera une liste de tous les répertoires, et ajouter un "-t" à ls le fera trier par ordre de date - le plus récent en premier.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X