Unix - Script para dar de baja servicios

   
Vista:

Script para dar de baja servicios

Publicado por Rey (1 intervención) el 25/06/2013 00:34:10
Hola, estoy haciendo un shell y estoy atorado en una parte, tengo que dar de baja servicios todos de con una sola intruccion, ej.

cd ruta
./nombre_del_shell stop

esta ruta aplica para todos los servicios que quiero bajar, sin embargo al aplicar

./nombre_del_shell status

si se quedó colgado algun proceso, debo detenerlo pero desde su ruta:

cd ruta/servicio1
./servicio1 stop

y asi según los que se hayan quedado colgados, como puedo automatizarlo?

Gracias y saludos.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
información
Otras secciones de LWP con contenido de Unix
- Cursos de Unix
- Temas de Unix
- Chat de Unix
información
Cursos y Temas de Unix
- Introducción a Unix
- Apuntes sistema operativo Unix
- Unix Programmer's Manual
Imágen de perfil de xve

Script para dar de baja servicios

Publicado por xve (60 intervenciones) el 25/06/2013 11:04:39
Hola Rey, la verdad es que lo puedes hacer de muchas maneras, ya sea con bash, python, perl, ...

Aquí te muestro una manera de hacerlo con bash...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#!/bin/bash
 
# definimos los scripts a ejecutar para deter:
 
ruta[0]="/usr/local/path1/"
script[0]="app1"
ruta[1]="/usr/local/path2/"
script[1]="app2"
 
set -e
 
for index in ${!script[*]}
do
    error=0
    printf "\nParando el servicio : %s\n" ${script[$index]}
    # comprovamos que exista la carpeta
    if [ -d ${ruta[$index]} ];then
        cd ${ruta[$index]} || error=1
        if [ $error -eq 0 ];then
            # comprovamos que existe el archivo ejecutable
            if [ -e ${script[$index]} ];then
                ${script[$index]} stop || error=1
 
                if [ $error -eq 1 ];then
                    # ha habido algun error... cambiamos de carpeta, etc...
                    echo ""
                fi
            fi
        fi
    fi
done

Coméntanos si te sirve, ok?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar