shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

liberar aplicação shell para outras opções


From: Karin Klayton Schiochet
Subject: liberar aplicação shell para outras opções
Date: Mon, 19 Jan 2009 23:06:29 -0300

Senhores,

Depois de montar um script simples para facilitar as manutenções em
clientes apareceu uma dúvida que não sei se é possível fazer já que o
scripts em shell seguem o padrão de execução em "lote" vamos dizer
assim.

tenho um script que lista os servidores que preciso acessar remotamente
e de acordo com a opção ele chama outro shell passando os parâmetros
para acessar o servidor via ssh. Eu gostaria que após fazer esse
chamado, o shell principal retornasse ao menu principal e fosse possível
caso necessário chamar outras opções.

A minha dúvida é se é possível retornar a execução do script sem ter que
terminar o sessão aberta com o novo shell para que ele possa retornar ao
menu. 

O script é basicamente este que está abaixo 

############################################
#!/bin/bash
#
#-------------------- VARIAVEIS --------------------
#
#----------------- SERVERS XXXXXXXXX ----------------
IPSRV1=XXX.XXX.XXX.XXX
IPSRV2=XXX.XXX.XXX.XXX
NAMESRV1=XXXXXX
NAMESRV2=XXXXXX

#---------------- SERVERS  YYYYYYY---------------
SRVFW=YYY.YYY.YYY.YYY
NAMESRV1=YYYY
SRVPX=YYY.YYY.YYY.YYY
NAMEPX2=yyyyyyyy
SRV3=YYY.YYY.YYY.YYY
NAMESRV3=YYYYYY

#------------------ SERVERS ZZZZZZZZZ -----------------
IPSRV1=ZZZ.ZZZ.ZZZ.ZZZ
NAMESRV1=ZZZZZZ

# E assim vai
........
........
........
........
# Termina variáveis

#----------------------- MENU ----------------------
menu()
{ 
clear
exit=9

until [ "$X" == "$exit" ]; do

echo "---------------------------------------------------"
echo "|                                                  |"
echo "|    Gerenciador de conexões ssh - EMPRESA     |"
echo "|          `date --date "0 day ago" +%d/%m/%Y`
|"
echo "---------------------------------------------------"
echo
echo "1 - FIREWALL XXXXXXXXXX ($NAMESRV1)"
echo "2 - PROXY XXXXXXXXXX (NAMESRV2)"
echo "3 - FIREWALL  YYYYYYYY ($NAMESRV1)"
echo "4 - FIREWALL ZZZZZZZZ ($NAMESRV1)"
echo
echo "9 - Sair"
echo
echo -e "Escolha uma das opções: \c"
read X
echo

case "$X" in

        1) echo "Acessando o FIREWALL da XXXXXXXXXX ($SRVFW)"
                gnome-terminal --window -t "EMPRESA - TITULO" --command='ssh 
usuario@
$SRVFW -p porta'
        ;;

        2) echo "Acessando o PROXY da YYYYYY ($SRVPX)"
                gnome-terminal --window -t "EMPRESA - TITULO" --command='ssh 
usuario@
$SRVPX -p porta'
        ;;

        3) echo "Acessando o FIREWALL da ZZZZZZZZ ($IPSRV1)"
                gnome-terminal --window -t "EMPRESA - TITULO" --command='ssh 
usuario@
$IPSRV1 -p porta'
        ;;

        9) echo "FINALIZANDO O SCRIPT..."
                sleep 1
                exit 1
        ;;

        *) echo "Opção desconhecida!!!"
                sleep 2
                clear;
        ;;

esac
done
}
menu    
############################################

Estou usando CentOS com gnome por isso uso o gnome-terminal. Gostaria de
saber se é possível após escolher uma opção o script retorne para o menu
e eu possa fazer outras opções.

Um grande abraço a todos e desde já agradeço a contribuição.

-- 
Karin Klayton Schiochet
Administrador de Redes
address@hidden
Tel: (91) 8121-5809



reply via email to

[Prev in Thread] Current Thread [Next in Thread]