El mié., 14 de nov. de 2018 05:17, miguel angel gonzalez <
mangelgonza...@gmail.com> escribió:

> Hola a todos,
> Tengo una duda, me han pedido que haga un script relativamente sencillo
> pero que me tiene atascado.
> Comprobar que tomcat está arrancado y sino arrancarlo, hasta aquí bien, lo
> estaba haciendo por procesos.
>
> #!/bin/bash
> RESTART="/etc/init.d/tomcat restart"
> PGREP="/usr/bin/pgrep"
> TOMCAT="java"
>
> # buscamos que exista el proceso
> $PGREP ${TOMCAT}
>
> # sino existe id de proceso y el comando anterior devuelve 0
>
>     if [ $? -ne 0 ]
>     then
>   $RESTART
>     fi
> ---
> Pues bien, así no quieren que se realice.
> Sino que compruebe estado es decir, si está arrancado que no haga nada
> sino que lo arranque. Por el mensaje que devuelve. Lo que llevo hecho es
> esto, el problema me surge que el estado de tomcat que devuelve el comando
> status no entra en la variable y sin eso el resto no funciona. Como podéis
> ver hee intentado varias opciones pero ninguna me funciona, entiendo que la
> correcta y que debería de funcionar es:  ssh root@$i
> SALIDA=$(/etc/init.d/Tomcat status)
>
> #!/bin/bash
> START="/etc/init.d/Tomcat start"
> PARADO="Tomcat Server is not running."
> #STATUS="Tomcat Server is running"
> #SALIDA=/etc/init.d/Tomcat status"
> for i in $(cat /home/usuario/xml.lst)
> do
> #            ssh root@$i /etc/init.d/Tomcat status >>
> SALIDA=$(/home/usuario/prueba_estado_tomcat.txt)
>                 ssh root@$i /etc/init.d/Tomcat status
>            *    ssh root@$i SALIDA=$(/etc/init.d/Tomcat status)*
>                 echo "$SALIDA"  >> /home/usuario/prueba_estado_tomcat.txt
> #               if [ "$SALIDA" == "$PARADO" ];
> #                then echo "está parado" >> /home/usuario/tomcat_parado.txt
>                 #$START
> #                fi
> done
> Por cierto, el servicio de tomcat es con la T mayúscula. De momento hasta
> que lo tenga terminado, voy por partes y estoy enviando el resultado a un
> txt. Recorro una lista con las ip´s de las máquinas. Por eso dentro de un
> for meto el if.
> ¿Se os ocurre algo? Gracias.
> --
> /m.a.
>

Humm chequeando el sock no seria mejor? Y para reforzar con un curl para
verificar que el puerto web responda...

Fijate si asi te va mejor que utilizando el script de start/stop

>

Responder a