• # ping

    Posté par . En réponse au message Afficher les ping en timeout. Évalué à 3.

    À adapter selon que tu veux le rapport ou pas, que c'est pour être lû par un humain ou une machine, etc.
    Note: tout le début du script sert juste à vérifier qu'il y a bien une option -i (interval) parce que par défaut c'est 0, et -f ça veux dire flood ...

    #!/bin/sh

    i=
    for opt
    do
    case "$opt" in
    -i) i=1; break;;
    esac
    done

    case $i in
    1) i=;;
    "") i="-i 1";;
    esac

    ping $i -f $* | \
    (
    read line; echo "$line"
    while read -n 1 char
    do
    case "$char" in
    ".") echo KO;;
    "\b") echo OK;;
    *) break;;
    esac
    done
    cat)


    PS: j'ai peur pour la mise en page, mais à la prévisualisation, ni les espaces ni les tabs ne sont conservées :(