Sous Linux, logger un script shell

Sous Linux, logger un script shell - Shell/Batch - Programmation

Marsh Posté le 12-10-2012 à 15:41:28    

Bonjour,
 
J'ai l'habitude de programmer sous Unix Solaris en KSH et lorsque je veux rediriger la sortie écran et erreurs systems, j'inclue en début de mon script la ligne suivante :  
 
exec >> mon_fichier.log 2>&1
 
Sous Linux lorsque j'utilise cette commande ça fonctionne sauf que le fichier de log ne se ferme pas, càd que je récupère tous les log systems qui n'ont rien à voir avec mon script ?!
Comme si tous les "/etc/messages" étaient redirigé vers ce fichier...
 
Si quelqu’un à une idée...
 
Merci.

Reply

Marsh Posté le 12-10-2012 à 15:41:28   

Reply

Marsh Posté le 13-10-2012 à 23:38:36    

Je ne sais pas d'où vient le comportement que tu décris sous linux, mais pour ce que tu veux faire, le plus simple serait peut-être de faire la redirection au moment de l'invocation du script, genre:
 
./script.sh >> fichier.log 2>&1

Reply

Marsh Posté le 15-10-2012 à 09:00:15    

Oui, c'est ce que j'ai fait ce WE mais c'est pareil...
C'est incompréhensible !

Reply

Marsh Posté le 15-10-2012 à 15:37:31    

salut,
 
mais il fait quoi ton script ? des trucs vaudou ? l'écran de la machine tourne-t-il sur lui-même à 360° ?
 
t'as regardé si, dans un script, quelques instructions simples (echo, time echo) ont le même comportement ? et en dehors d'un script ?

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed