[Shell] Créer fichier de log

[Résolu/Fermé]
Signaler
Messages postés
438
Date d'inscription
mercredi 11 mars 2009
Statut
Membre
Dernière intervention
8 juin 2015
-
Messages postés
438
Date d'inscription
mercredi 11 mars 2009
Statut
Membre
Dernière intervention
8 juin 2015
-
Bonjour,

je reviens une fois de plus vers le forum pour poser une question sur le shell que je connais absolument pas ...

Mon problème va sans doute vous paraître comme facile ... pas pour moi :-)

alors voilà j'ai ce petit programme en shell :

#!/bin/bash
workFolder=$(readlink -f $(dirname $0))

touch Log-'date +%Y%m%d'.log

LOGFILE=Log-'date +%Y%m%d'.log

find /var/ftp/TestArchivage/Archive -mtime +60 -type f -name "*.xml" -exec rm -f {} +


J'ai essayé ces deux solutions

$workFolder"/"$LOGFILE tee -a

2>&1 $workFolder"/"$LOGFILE


Mais aucune des deux ne marche et à chaque fois cela me dis Permission denied,
j'ai essayer de faire un chmod 777 sur le fichier de log mais toujours rien qui s'inscrit à l'intérieur ...

Un petit peu d'aide ne serait pas de refus ^^

D'avance merci !



2 réponses

Messages postés
36324
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
27 janvier 2021
6 416
Salut,

find /var/ftp/TestArchivage/Archive -mtime +60 -type f -name "*.xml" -exec rm -f {} + > ${workFolder}/${LOGFILE} 2>&1

Messages postés
438
Date d'inscription
mercredi 11 mars 2009
Statut
Membre
Dernière intervention
8 juin 2015
37
Salut zipe31,

je viens d'essayer ce que tu as mis en gras, mais rien n'y fait ...

-rw-r--r--. 1 root root      0 Jun 17 17:24 Log-20130617.log


mon fichier de log ne se remplit pas ...
(ps j'ai bien de vieux fichiers datant de l'an dernier)
Messages postés
438
Date d'inscription
mercredi 11 mars 2009
Statut
Membre
Dernière intervention
8 juin 2015
37
du coup je suis un peu perdu,
je dois l'exécuter deux fois ?
une fois avec le echo pour enregistrer ce qui va être supprimer et une deuxième fois ou je vais supprimer le tout ?
Messages postés
438
Date d'inscription
mercredi 11 mars 2009
Statut
Membre
Dernière intervention
8 juin 2015
37
oui exactement tout s'affiche sans saut de ligne,
(désolé c'est la fin de journée, mon cerveau à du mal à s'exprimer) :)
Messages postés
36324
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
27 janvier 2021
6 416
Non, qu'une fois, mais comme dit plus haut, le "echo" est une précaution avant d'utiliser la commande "rm" surtout en association avec un "find", un espace de rajouter dans le chemin (après le 1er slash) et pour peu que tu sois "root", adieu certains fichiers ;-(
Messages postés
36324
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
27 janvier 2021
6 416
Pour l'histoire des sauts de lignes, change le "+" par "\;" :

find /var/ftp/TestArchivage/Archive -mtime +60 -type f -name "*.xml" -exec echo "rm -f {}" \; > ${workFolder}/${LOGFILE} 2>&1
Messages postés
438
Date d'inscription
mercredi 11 mars 2009
Statut
Membre
Dernière intervention
8 juin 2015
37
De cette manière là c'est nickel ! les lignes sont bien espacés,
je ré-exécute une deuxième fois la commande pour supprimer les lignes cité et c'est bon :)

Merci à toi !