вівторок, 14 липня 2015 р.

Bash command: How to ping host untill ip address is responds

#!/bin/sh
wait_hostname_timeout=120 # in seconds

###### get the hostname and IPaddress of master
ORIGINAL_HOSTS=($(eval echo $CLUSTER))
HOST=(${ORIGINAL_HOSTS[0]})
echo "hostname master = $HOST"

while [  $COUNTER -lt 10 ]; do
            sleep 1; count=$((count+1))
            echo quit | telnet ${HOST} 22 2>/dev/null | grep Connected
            host_status=$?
         done

count=1; host_status=1
    ping -c1 ${HOST} > /dev/null 2>&1

until [ "$host_status" -eq 0 -o $count -gt $wait_hostname_timeout ];
      do
            sleep 1; count=$((count+1))
            echo quit | telnet ${HOST} 22 2>/dev/null | grep Connected
            host_status=$?
      done

masterIP=($(host $HOST |awk '{print $4}'))
echo "ip address master = $masterIP"

echo "This build slave is $HOSTNAME"

Немає коментарів:

Дописати коментар