Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 22/06/2011, à 17:45

kyeto

Bash, daemon, lecture en continue

Bonjour à tous,

Je cherche depuis ce matin sur le net l'info qu'il me manque mais je bloque.

Je dois créer un script bash qui va lire en continue dans un fichier, un exemple type, un fichier log.
Pour chacun des nouvelles lignes, je veux faire un traitement.

Ce que je ne sais pas faire c'est lui dire d'attendre qu'une nouvelle ligne apparaisse dans ce fichier d'entré, pour qu'il la traite.
Et il passera à la suivante dès qu'il a fini etc ..

Merci pour votre aide !

Hors ligne

#2 Le 22/06/2011, à 18:26

Wild_Child_87

Re : Bash, daemon, lecture en continue

Bonjour

LOG="Ton fichier"

while read line; do
(Traitement de la ligne)
done < <(tail -f $LOG)

Dernière modification par Wild_Child_87 (Le 22/06/2011, à 18:28)

Hors ligne

#3 Le 22/06/2011, à 18:48

pode

Re : Bash, daemon, lecture en continue

Si le fichier doit subir une rotation de logs qui consiste à renommer le fichier en cours et à en créer un nouveau (donc avec un nouveau numéro d'inode), il vaut mieux utiliser l'option -F de tail

Hors ligne

#4 Le 24/06/2011, à 14:56

AnsuzPeorth

Re : Bash, daemon, lecture en continue

Bjr,
Il y a aussi intotify-wait, moins gourmand, tail -f fait une boucle toutes les secondes, alors qu'inotify bouge uniquement si il y a modifications.


Interface graphique pour bash, python ou autre: glade2script
Support Tchat: http://chat.jabberfr.org/muckl_int/inde … ade2script  (Hors ligne)

Hors ligne

#5 Le 24/06/2011, à 15:09

credenhill

Re : Bash, daemon, lecture en continue

hello

tail -f log | awk '{print "nouvelle ligne : ", $0}'

Hors ligne