#1 Le 03/09/2017, à 10:26
- klintiswood
Detection error ou chaine de caractère dans terminal
Bonjour à tous,
J'ai une machine tournant sous Ubuntu 16.04 qui doit tourner 24h/24 et j'aimerais savoir si il est possible de détecter l'affichage d'une erreur ou d'une chaine de caractères dans une fenêtre type terminal et quand cette erreur est détectée, faire rebooter la machine.
Dois-je créer une tache cron qui vérifie le contenu de la fenêtre toutes les x minutes ? Et si oui, avec quel language puis-je détecter le contenu d'une fenêtre de terminal?
Je ne suis pas un expert linux mais j'ai des bases de programmation.
Merci!
Laurent
Hors ligne
#2 Le 03/09/2017, à 10:48
- kholo
Re : Detection error ou chaine de caractère dans terminal
salut,
sur cette page, un des scripts tail un fichier texte :
#!/bin/bash
#*************************************#
# NOM :
# FONCTION :
# VERSION="alpha"
# NOTES DE VERSIONS
#
#*************************************#
# echo "parser-ecoute -----------------"
file="reconnaissances.txt"
tail -f -n 1 $file | while read line;do
./traite-parseur "$line"
done
exit 0
en pointant file sur un fichier log
$line est une ligne du journal que tu peux parser
Hors ligne
#3 Le 03/09/2017, à 16:40
- klintiswood
Re : Detection error ou chaine de caractère dans terminal
Ah super intéressant ça.
On doit tout le temps passer par un fichier ou on peut lire une fenêtre directement?
Je vais essayer ceci pour déjà récupérer les cas d'erreur dans mes logs:
tail -f -n 10 '/var/log/syslog' | while read line;do
echo $line
case $line in
*error*) echo "Error";;
*) echo "rien trouvé";;
esac
done
Hors ligne