Inside my isolated local LAN I have one Linux box working as a deployment host (Orchestrator) Monitoring multiple Linux boxes Box1, Box2....Boxn. On the deployment Linux box, i have installed smstools to send me sms. I want to build a script placed on the deployment host to monitor specific process on each linux box, and give me on daily basis SMS messages which kind on process running. ========//script.sh//============== #!/bin/bash for host in $(cat /home/operator/shellscripts/host.txt) do echo -n > /home/operator/shellscripts/$host.txt for process in $(cat /home/operator/shellscripts/process.txt) do ssh $host "ps ax | grep $process | grep -v grep" > /home/operator/shellscripts/$host.txt if [[ -s /home/operator/$host.txt ]] ; then echo $process is running in $host sendsms else echo $process is not running in $host sendsms fi ; done done in the host, file stated all hosts IP's I need to monitor =========//host.txt//======== X.X.X.X Y.Y.Y.Y Z.Z.Z.Z ... in the process.txt stated all process i need to monitor on each box (for example i have to look if NTP and HTTP working on the fist host X.X.X.X) and so on ==========//process.txt//=========== ntp http mysql oracle cluster https http ... in the phonelist.txt stated all numbers of whitelisted operators, they should be notified about all hosts ==========//phonelist.txt//=============== 009XXXXXXXXXXXX #op1 009yyyyyyyyyyyy #op2 009zzzzzzzzzzzz #op3 in the authen.txt stated the username/password of the operator to login via ssh on each server, each server has its own authentication credential. ===========//authen.txt//============== operator1 password1 #box1 operator2 password2 #box2 The output should be like this inside the SMS named, http running in x.x.x.x (OK) https not runnning in x.x.x.x mysql running in y.y.y.y (OK) ...