Script Geeklet per eseguire il ping degli host

0

Ho trovato il bello script qui sotto per eseguire il ping di un host per verificare se è attivo o inattivo. Tuttavia non ho trovato un modo (e la mia conoscenza di base della programmazione mi ha deluso qui) su come posso eseguire il ping su più server. Idealmente preferirei HOST1 = XXX, HOST2 = YYY ecc ...

Qualcuno potrebbe indicarmi la giusta direzione? Ho circa 10 host che mi piacerebbe vedere lo stato su / giù per. Script Geektool copiato da macosxtips.co.uk

HOST=typehostnamehere
PING='ping -q -c 1 $HOST'
if [[ $? -eq 0 ]] ; then
    TIME='echo $PING |tail -1 | cut -d/ -f 5'
    echo ${TIME}ms away from $HOST
    exit 0
else
    echo $HOST could not be reached
    exit 2
fi
    
posta pknz 05.08.2014 - 01:12
fonte

2 risposte

1

Vuoi leggere i loop in script bash .

Ad esempio:

HOSTS="hosta
hostb
hostc"

for machine in $HOSTS
do
  PING='ping -q -c 1 $machine'
  if [[ $? -eq 0 ]] ; then
    TIME='echo $PING |tail -1 | cut -d/ -f 5'
    echo ${TIME}ms away from $machine
  else
    echo $machine could not be reached
  fi
done

Non l'ho provato, ma è abbastanza vicino. Sostituisci l'elenco HOSTS con l'elenco degli host su cui desideri segnalare.

    
risposta data 05.08.2014 - 01:45
fonte
1

Per eseguire il ping su più host con l'immagine di feedback rosso / verde è necessario eseguire più istanze del geeklet ping. Apri semplicemente ping.glet più volte, inserisci ogni volta un nome host diverso e allineali sullo schermo per ottenere l'effetto visualizzato nello screenshot del sito che hai collegato.

Puoi riscrivere lo script per eseguire il ping su più siti, ma riceverai solo un'immagine di feedback rosso / verde.

    
risposta data 05.08.2014 - 02:02
fonte

Leggi altre domande sui tag