Commande shell pour suppression de fichier

Bonjour,

j'aimerai pouvoir supprimer dans un répertoire Unix tous les fichiers datant par exemple du '22/08/2007' .

-rw-rw-rw- 1 dvalo paci_app 151 Aug 22 2007 _COTSTDU1_ARA.234087.fin
-rw-rw-rw- 1 dvalo paci_app 130 Aug 22 2007 _COTSTDU1_REM.234097.fin
-rw-rw-rw- 1 dvalo paci_app 151 Aug 22 2007 _COTSTDU1_ARA.234097.fin
-rw-rw-rw- 1 dvalo paci_app 130 Aug 22 2007 _COTSTDU1_REM.234149.fin
-rw-rw-rw- 1 dvalo paci_app 151 Aug 22 2007 _COTSTDU1_ARA.234149.fin
-rw-rw-rw- 1 dvalo paci_app 130 Aug 28 2007 _COTSTDU1_REM.240076.fin

quelle commande puis je appliquer afin de retrouver tous ces fichiers et les supprimer sans toucher aux autres?

Merci d'avance pour votre aide.
Configuration: Windows XP
Internet Explorer 6.0

3 réponses

  1. Modérateur
    Salut,

    Regarde du côté de la commande "find" et de son option "-mtime" (man find), un truc du genre (remplacer "n" par le nombre de jours équivalent à la différence entre la date du jour et la date de référence) :
    find /rep -type f -mtime n -exec echo "rm -f {}" \;
    Enlever le "echo" si les tests sont concluants...
    1. Bonjour,

      J'ai utilisé ce code qui a marché à la perfection.

      REP=/home/MonRepertoire/DossierDeTest
      find $REP/backup_*.tar.gz -type f -mtime +90 | xargs rm -f

      Cela supprime tout les fichiers respectant la syntaxe backup_*.tar.gz vieux de plus de 90 jours (3 mois) dans le répertoire DossierDeTest.

      En espérant avoir aidé certains. A noter : REP est paramétrable...

      Bonne journée.
      1. j'avais une question semblable à ça pour un devoir linux
        j'ai réussit en faisant

        on créait des backups du répertoire home avec tar de cette façon
        tar -zcf /backup/hbackup$(date +%d%b%y_.tar.gz /home/*

        et il fallait enlevé les fichiers plus vieux que 3jours.

        donc à partir des énonçés ci-haut j'ai réussit avec la ligne suivante :
        rm -f $(find /backup/hbackup*.tar.gz -mtime -3)
      2. @JO duMonTya une merdouille à la ligne 5
        on lit

        tar -zcf /backup/hbackup$(date +%d%b%y_.tar.gz /home/*

        aurait dû lire

        tar -zcf /backup/hbackup$(date +%d%b%y).tar.gz /home/*
      3. merci pour la commande mais j'ai un type de dossier .svn caché que je veut les supprimer, cette commande n'a pas pu réussir:

        find $REP/*.svn -type f | xargs rm -f
      4. Modérateur
        Salut,

        find $REP -name "*.svn" -type f | xargs rm -f
    2. salut,

      ça marche !!! merci bcp.
      1. Modérateur
        De rien ;-))

        On peut avoir la syntaxe complète que tu as utilisée, s'il te plaît, merci ?