Commande shell pour suppression de fichier
sir_rob1
-
jipicy Messages postés 41342 Statut Modérateur -
jipicy Messages postés 41342 Statut Modérateur -
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.
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.
A voir également:
- Commande shell pour suppression de fichier
- Forcer suppression fichier - Guide
- Fichier bin - Guide
- Invite de commande - Guide
- Fichier epub - Guide
- Fichier rar - Guide
3 réponses
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) :
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...
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.
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.
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)
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)