Je suis en train d'essayer d'écrire un script en awk pour recuperer les adresses IP contenu dans mon fichier /etc/hosts. (j'ai recupere le script sur un site et je l'ai adapté au traitement de mon fichier hosts).
J'obtiens bien une liste à l'écran de ces serveurs, mais je voudrais aussi faire un PING de chacun de ces serveurs pour vérifier leur connexion. juste après le print "Adresse IP" 1ドル.
Mais je ne connais rien à la syntaxe dans awk. Comment peut on recuperer les zones 1ドル...10ドル dans des variables pour les utiliser en appelant des programmes externes (ping en l' occurence).
Voici mon script, pouvez vous m'aider ?
Merci d'avance.
#!/usr/bin/awk -f
BEGIN {
print "Début du script"
nbComment=0
nbServeur=0
}
(/^#/ || /^$/){
nbComment++
}
{
nbServeur++
print "Adresse IP : " 1ドル
}
END {
print "Nb Lignes Traitées :" nbServeur " dont " nbComment" Lignes de commentaires."
}
# system
Posté par botio2 . Évalué à 1.
http://www.parinux.org/ressources/supports-confs/awk/commandes.html(...)
# 2 méthodes
Posté par SamG . Évalué à 2.
En gros tu as 2 méthodes:
- avec system:
ret = system("ping " 1ドル)
print "retour", ret
- avec le pipe:
cmd = "ping " 1ドル
while ((cmd | getline ligne) > 0)
print ligne
close(cmd)
La 1ère méthode devrait te suffire.
un "ping -c 1 toto" te renvoit 0 si c'est ok
# Sans awk
Posté par nojhan (site web personnel, Mastodon) . Évalué à 3.
SERVEURS=`cat /etc/hosts |grep '\.1'|cut -d " " -f 1`
for i in $SERVEURS; do
echo -n $i
ping -c 1 -q $i|grep 'transmitted'
done;
[^] # Re: Sans awk
Posté par nojhan (site web personnel, Mastodon) . Évalué à 1.
# SUPER MERCI A TOUS
Posté par OCastien . Évalué à 1.
D'une manière générale, comment peut on affecter à une variable de mon script, la valeur de "la zone" 1ドル de awk ?
MaVariable = awk '{ print 1ドル }' /etc/Monfichier
cette ligne ne fonctionne pas.
[^] # Re: SUPER MERCI A TOUS
Posté par SamG . Évalué à 1.
MaVariable=`awk '{ print 1ドル }' /etc/Monfichier`
[^] # Re: SUPER MERCI A TOUS
Posté par OCastien . Évalué à 1.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.