Supprimer des vieux fichiers de log

Fermé
_vince Messages postés 37 Date d'inscription mardi 30 janvier 2007 Statut Membre Dernière intervention 14 mai 2008 - 30 janv. 2007 à 14:37
nes t Messages postés 12 Date d'inscription samedi 17 novembre 2007 Statut Membre Dernière intervention 21 mars 2014 - 31 mars 2008 à 04:43
Bonjour,

Voici mon "probleme":

Je cherche a supprimer des fichiers plus vieux de 10 jours et dont le nom a le motif suivant: log-1234.5
Le motif est toujours "log-" puis un nombre suivi d'un "." et suivi d'un nombre.
Le but etant d'inclure cette commande dans le crontab, ce serait mieux si elle etait petite et elegante. Je travaille sur AIX.

J'ai d'abord pense a ceci:

for file in `find rep/ -type f -mtime +10`
do
echo $file | egrep -q "/log-[0-9]+\.[0-9]+$"
if [ $? -eq 0 ]; then
rm $file
fi
done

Y aurait-il une facon plus elegante d'arriver au meme resultat ?

Je pense en particulier a:
find rep/ -type f -mtime +10 -name "..." -exec rm {} \;
mais l'option name ne reconnait pas l'expression reguliere que j'utilise dans l'exemple precedent.

Merci d'avance pour votre aide

3 réponses

lami20j Messages postés 21331 Date d'inscription jeudi 4 novembre 2004 Statut Modérateur, Contributeur sécurité Dernière intervention 30 octobre 2019 3 567
30 janv. 2007 à 14:59
Salut,

essaie ça (je n'ai pas testé)
find rep/ -type f -mtime +10 -a -name "log-[0-9]*.[0-9]*" 
--
lami20j
0
_vince Messages postés 37 Date d'inscription mardi 30 janvier 2007 Statut Membre Dernière intervention 14 mai 2008
30 janv. 2007 à 15:08
En fait, j'ai deja essaye ca mais ca supprime les fichiers avec un nom du genre: "log-123abc.456def".

Apparemment l'option name est limitee... Mais il y a de grandes chances pour que je me tourne vers cette solution qui me plait a moitie.
0
[Dal] Messages postés 6174 Date d'inscription mercredi 15 septembre 2004 Statut Contributeur Dernière intervention 2 février 2024 1 083
30 janv. 2007 à 15:12
Salut,

Sous Linux logrotate est un outil standard qui gère la rotation des logs et l'effacement des plus anciens.

Sous FreeBSD, NetBSD et OpenBSD, tu as newsyslog qui fait celà (portée ailleurs aussi).

Sous AIX (que je ne connais pas), tu devrais avoir des outils similaires, si on en juge par ce qu'on peut lire là :

http://www.softpanorama.org/Commercial_unixes/AIX/managing_aix_logs.shtml

Celà pourrait être plus "élégant" que de créer un script :-)


Dal
0
salut je n'arrive pas à supprimer un fichier et un dossier qui se trouve dans mon USB dont le nom est kingston 1GB lors du transfert des ses documents je l'ais rompu sans être au courant je travaillais sur linux dès lors mon clé ne sert à rien on ne peut ni les supprimés ni ajouté d'autre j'ai besoin d'aide.
0
nes t Messages postés 12 Date d'inscription samedi 17 novembre 2007 Statut Membre Dernière intervention 21 mars 2014 1
31 mars 2008 à 04:43
Bonjour
je ne sais pas si c vraiment le cas mais ca peut etre aussi simple que, ta clé est protégé d'écriture, dans qlqs clés il exsiste un botton si on l'active, la clé devien protégée, tu peux essayer ca si non tu peux y aller dans l'angler sécurité et voir ce que tu peux changer dedans, je ne suis pas sur que c ton cas .....
il peut etre aussi que ta clé est endemagé comme la mienne que l'ordinateur le reconnais meme pas comme préphérique
j'espere que je t'ai aidée, si ca marche pas tu peux m'ecrire et on vira .....
Merci
avec mes salutations
0