Bonjour,
Je fais appel à vous, car je cherche en faite, à l'aide d'un script awk, à extraire quelque mot d'un fichier de log.
Ces mot (qui sont des protocoles), se trouvent a chaque fois en 5eme position sur toutes les lignes du fichier. J'arrive donc avec le script suivant a afficher tous les mots
Mon script est un peu compliqué avec la variable valeur, mais c'est parce que j'ai essayé quelque chose.#! /bin/awk -f
BEGIN {
printf ("Mon script")
}
{
$valeur = $5;
printf ($valeur "\n");
}
Donc en tapant la commande : awk -f script.awk monfichierdelog.log
J'obtient mes protocoles comme ceci :
Ce que jevoudrais faire maintenant donc, c'est afficher une seul fois les protocole qui ont déja afficher. Par exemple n'afficher qu'une seul fois imapd-ssl etc... Pour avoir un truc comme ca :imapd-ssl:
imapd-ssl:
imapd-ssl:
imapd-ssl:
imapd-ssl:
courierd:
courierd:
courieresmtp:
courieresmtp:
courierd:
courierd:
imapd-ssl:
imapd-ssl:
imapd-ssl:
J'ai cherché pas mal pas moyen de trouver, pour tant je suis sur que c'est simple.imapd-ssl:
courieresmtp:
courierd:
Merci de votre aide
Partager