Suppression de fichiers de LOG
Résolu
pastoi2008
Messages postés
7
Date d'inscription
Statut
Membre
Dernière intervention
-
dubcek Messages postés 18789 Date d'inscription Statut Contributeur Dernière intervention -
dubcek Messages postés 18789 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Dans une shell unix, j'utilise la commande :
find $DIR_LOG -type f -mtime +$1 -exec rm -v {} \;
pour supprimer les fichiers du répertoire LOG vieux de + du nombre de jour passé en paramètre.
Quand je saisie 1 en paramètre, je retrouve dans le répertoire les fichiers d'aujourd'hui et d'hier.
Quand je saisie 0, je garde tous les fichiers <= à 24heures.
Comment fait pour supprimer les fichiers d'hier sans regarder l'heure?
Merci,
Dans une shell unix, j'utilise la commande :
find $DIR_LOG -type f -mtime +$1 -exec rm -v {} \;
pour supprimer les fichiers du répertoire LOG vieux de + du nombre de jour passé en paramètre.
Quand je saisie 1 en paramètre, je retrouve dans le répertoire les fichiers d'aujourd'hui et d'hier.
Quand je saisie 0, je garde tous les fichiers <= à 24heures.
Comment fait pour supprimer les fichiers d'hier sans regarder l'heure?
Merci,
A voir également:
- Suppression de fichiers de LOG
- Forcer suppression fichier - Guide
- Explorateur de fichiers - Guide
- Gestionnaire de fichiers - Télécharger - Gestion de fichiers
- Renommer des fichiers en masse - Guide
- Fichiers epub - Guide
2 réponses
Bonjour,
Pour faire ça, je n'utiliserait pas mtime qui fonctionne sur n*24 heures (donc a moins de lancer ça a minuit...)
En revanche, il existe pour la commande find une option -newer file qiu permet de rechercher un fichier dont le mtime et plus récent que le mtime de file
Du coup, pour trouver tout les fichier modifier avant le 23 09 2008 00:00 tu peux faire comme suit:
A tester sans le rm dans un premier temps, j'ai un petit doute sur la possibilité d'utiliser le point d'exclamation pour inverser un prédicat dans toutes les versions de find.
A plus
Pour faire ça, je n'utiliserait pas mtime qui fonctionne sur n*24 heures (donc a moins de lancer ça a minuit...)
En revanche, il existe pour la commande find une option -newer file qiu permet de rechercher un fichier dont le mtime et plus récent que le mtime de file
Du coup, pour trouver tout les fichier modifier avant le 23 09 2008 00:00 tu peux faire comme suit:
$ touch -t 200809230000 temoin $ find . -type f ! -newer temointouch met le mtime du fichier temoin à 0h00 le 23 09 2008, et le find recherche les fichier dont le mtime n'est pas plus récent que celui du fichier temoin.
A tester sans le rm dans un premier temps, j'ai un petit doute sur la possibilité d'utiliser le point d'exclamation pour inverser un prédicat dans toutes les versions de find.
A plus