Ping Host Until it is up and email


 
Thread Tools Search this Thread
Top Forums Shell Programming and Scripting Ping Host Until it is up and email
# 1  
Old 09-18-2012
Question Ping Host Until it is up and email

Hi I am trying to write a script which runs until the host is up. i got it figured out that it needs to be in loop till it return $? = 0.

Not getting it through though. I am not sure about the 6th line !!!

Code:
#!/bin/sh
HOSTS="host.txt"
ping(){
for myhost in "$HOSTS"
do
ping -c -1 "$myhost" && $? -eq 0
done
exit
}

if ping $HOSTS
then
echo "server up" |mail -s "server up" xxx@ABC.com
echo "server up"
fi

# 2  
Old 09-18-2012
To keep the forums high quality for all users, please take the time to format your posts correctly.

First of all, use Code Tags when you post any code or data samples so others can easily read your code. You can easily do this by highlighting your code and then clicking on the # in the editing menu. (You can also type code tags [code] and [/code] by hand.)



Second, avoid adding color or different fonts and font size to your posts. Selective use of color to highlight a single word or phrase can be useful at times, but using color, in general, makes the forums harder to read, especially bright colors like red.

Third, be careful when you cut-and-paste, edit any odd characters and make sure all links are working property.

Thank You.

The UNIX and Linux Forums
# 3  
Old 09-18-2012
I think you have the loop in the wrong place. You don't want to ping ALL the hosts before you email, do you?

You also don't want to call your function the same thing as an external command, that could infinite-loop or worse.

I don't think you need a function here anyway.

This will work with linux ping but not other pings, which don't all return a value properly.

Code:
for H in $HOSTS
do
        while ! ping -c 1 $H > /dev/null 2> /dev/null
        do
                true
        done

        echo "$H is up"
done

This User Gave Thanks to Corona688 For This Post:
# 4  
Old 09-18-2012
Also if you want to read the host.txt file into the HOSTS variable use:

Code:
HOSTS=$(cat hosts.txt)

before the Corona688's for loop

or start the for loop with

Code:
for H in $(cat hosts.txt)

# 5  
Old 09-18-2012
Ping Host Until it is up and email

Thanks alot guys.. BUt i got into another lock now.

When i use the host file for multiple host, the script waits until the first host is up to execute the other ipaddress..

The case here is , i have 10 ipadreses and i want to know whenever the systems comes up..
# 6  
Old 09-18-2012
Code:
 
#!/bin/sh
HOSTS="host.txt"
while read host
do
        ping $host -n 1 $H 1>/dev/null && echo "$host is up"
done < $HOSTS


Last edited by rdrtx1; 09-18-2012 at 07:52 PM..
# 7  
Old 09-18-2012
Useless Use of Cat Award

Code:
while read host
...
done < inputfile

Login or Register to Ask a Question

Previous Thread | Next Thread

10 More Discussions You Might Find Interesting

1. AIX

Ping to remote host failed

Actually. I was getting a ping to remote host failed for one of my etherchannel. When I checked it was in backup adapter and again I use to faileover and brought to primary channel. But it was again going to backup channel and giving me the alert ping to remotehost failed. When I checked the load... (3 Replies)
Discussion started by: Mohamed Thamim
3 Replies

2. Shell Programming and Scripting

Ping Response from the host name

Hi All, I have the requirement where am pinging the server and matching the IP address with the existing IP address. Below code is returning me the IP address and my requirement is i have to see that also whether it is pinging or not PING useipapd01 (172.22.32.87) 56(84) bytes of data. 64... (1 Reply)
Discussion started by: sharsour
1 Replies

3. IP Networking

ping can not recognize host but host command can

Hi, I have a weird problem. when ever I do ping command like for example ping unix.comI get the following message: # ping unix.com ping: unknown host unix.com but when I use host the computer is able to know the host. # host unix.com unix.com has address 81.17.242.186 unix.com mail is... (2 Replies)
Discussion started by: programAngel
2 Replies

4. Solaris

unable to ping a host in another domain

Hello I have a server in it.siroe.com I added it.siroe.com in /etc/resolv.conf. I still can't ping the server. any service to restart here? any other file to edit? thx (4 Replies)
Discussion started by: melanie_pfefer
4 Replies

5. UNIX for Dummies Questions & Answers

PING to one host in one background process

Hi All, I'm doing one script on Juniper router where you have one FreeBSD Shell: Is pinging from time to time one ethernet port of othere router and in case of fail is blocking one port entering in CLI and doing some command: If I run this script all is working perfectly, but if I run in... (1 Reply)
Discussion started by: teigipo
1 Replies

6. Solaris

PING - Unknown host 127.0.0.1, Unknown host localhost - Solaris 10

Hello, I have a problem - I created a chrooted jail for one user. When I'm logged in as root, everything work fine, but when I'm logged in as a chrooted user - I have many problems: 1. When I execute the command ping, I get weird results: bash-3.00$ usr/sbin/ping localhost ... (4 Replies)
Discussion started by: Przemek
4 Replies

7. UNIX for Advanced & Expert Users

Unable to send eMail from a UNIX-Host ( using mailx ) to a Outlook-email-addres(Win)

Hi A) I am able to send eMail using mailx from a UNIX ( solaris 8 ) host to my Outlook-email-ID : FName.Surname@Citigroup.com ( This is NOT my actual -eMail-ID). But in Outlook the "From :" eMail address is displayed as " usr1@unix-host1.unregistered.email.citicorp.com " .i.e the words... (2 Replies)
Discussion started by: Vetrivela
2 Replies

8. Shell Programming and Scripting

help to ping a host, is it alive or not ...

hello to everyone, i was wondering if you could help me with a script im working on, it's kind of simple but i dont have a lot experience on unix comands: well, here it is: you might apreciate the infinite while loop :D, it is supossed to be running on the server all day scaning it every 5... (12 Replies)
Discussion started by: sx3v1l_1n51de
12 Replies

9. IP Networking

QNX host cannot ping SCO host, vice versa

The problem I am facing now is that the QNX host could not ping the SCO host and vice versa. They are in the same domain, ie, 172.20.3.xx. As I am very new to Unix, I guess I must have missed out some important steps. Pls help... Thanx alot (2 Replies)
Discussion started by: gavon
2 Replies

10. UNIX for Dummies Questions & Answers

Unable to ping host

Hi, dear all, I am rather new to Unix and have this problem where I cant seem to ping from 1 host to another. The scenerio is as follows: - 1 QNX host->Eth->1 SCO host the SCO host is configured with it's IP the QNX host is configured with another IP both in the same domain, ie, 172.20.3.XX... (3 Replies)
Discussion started by: gavon
3 Replies
Login or Register to Ask a Question