#!/usr/bin/env bash
##############################################################
#     Script Para Automatizacion De Kraken Console           #
#           Author: Marian Sanchez                           #
##############################################################

if [ -z $1 ]; then

echo -e "\e[91m PARAMETRO: Ninguno - Solo debe ingresar el nombre del inventario \e[0m"
echo -e "\e[91m MODO DE USO : kraken ping 2 nombre_inventario\e[0m"
exit;

fi

$(ls /home/kraken/clientes/$1 &> /dev/null)

if [ $? ne 0 ]; then

	echo -e "\e[91m ARCHIVO DE INVENTARIO $1 NO EXISTE EN /home/kraken/clientes/\e[0m"
	exit 1;
	
fi

readarray -t arreglo < /home/kraken/clientes/$1

echo -e "\n"
echo -e "\e[93m ========== ping2 HACIA LOS SERVIDORES DEL INVENTARIO: $1 ==============\e[0m"


for b in ${arreglo[@]}
do


                ping -c 3 $b > /dev/null

                if [ $? -eq 0 ]; then
                                echo -e "\e[32m $b OK \e[0m"
                                echo $b 1>> /tmp/ping2_ok
                else
                                echo -e "\e[31m $b FAIL \e[0m"
                                echo $b 1>> /tmp/ping2_fail
                fi


done

si=$(cat /tmp/ping2_ok)
no=$(cat /tmp/ping2_fail)
total_ok=$(cat /tmp/ping2_ok | wc -l)
total_nok=$(cat /tmp/ping2_fail | wc -l)

echo -e "\e[93m ---------------------------------------------------------- \e[0m"
echo -e "\n"

echo -e "\e[32m ========== SERVIDORES QUE RESPONDEN ping ==============\e[0m"
echo -en "\e[32m $si \e[0m"
echo -e "\n"

echo -e "\e[31m ========== SERVIDORES QUE NO RESPONDEN ping ==============\e[0m"
echo -en "\e[31m $no \e[0m"
echo -e "\n\n"

echo -e "\e[93m Servidores Ok: $total_ok        Servidores Failed: $total_nok   \e[0m"

rm -f /tmp/ping2_fail &> /dev/null
rm -f /tmp/ping2_ok &> /dev/null

exit 0;
