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

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

Re: [shell-script] liberar aplicação shell para outras opções


From: Randolph Chaves
Subject: Re: [shell-script] liberar aplicação shell para outras opções
Date: Tue, 20 Jan 2009 15:25:37 -0200

Você usa gnome tem uma opção melhor para iso é o sshmenu
<http://sshmenu.sourceforge.net/>.

Grato.


2009/1/20 Karin Klayton Schiochet <address@hidden>

>   Senhores,
>
> Obrigado pela ajuda, e fico até com vergonha pois erra isso mesmo Alain,
> eu já tinha usado diversas vezes o "&" para executar um programa e
> liberar o shell e agora eu tinha esquecido completamente de utiliza-lo.
>
> Edmarssouza - Erá sim para continuar o loop, mais o script estava
> fazendo o loop infinito com o until do done e o que eu não estava
> conseguindo era executar chamadas ssh para conexão com outros servidores
> e logo depois de executar uma chamada ssh ele retornar para o menu
> independente do shell filho estar aberto, coisa que só acontecia depois
> de fechar o chell filho.
>
> Agora me aconteceu outro problema, pelo terminal eu executo estes
> programa normalmente para abrir outra instancia de shell para rodar o
> comando normalmente. Agora dentro do script quando faço a chamada para o
> comando, ele me abre uma janela e logo em seguida fecha.
>
> Eu estava utilizando o xterm sem problemas, no entanto, ele é um pouco
> limitado e eu gostaria de utilizar o bash que me dá mais opções.
>
> Fiz o teste com outros comandos e alguns funcionaram normal mas quando
> eu faço uma chamada gnome-terminal -e --command="ssh usuario@IP -p
> porta" &. Mesmo sem o "&" no final ele esta fechando a janela logo em
> seguida. Muito estranho esse comportamento. O pior não fica nada em
> background, é fechada mesma a janela.
>
> Um grande abraço a todos,
> Karin Klayton Schiochet
>
> Em Ter, 2009-01-20 às 11:56 -0200, Alain M. escreveu:
>
> > Já que todos não sabem se entenderam o que você quer, eu acho que
> > entendi outra coisa...
> >
> > Para executar um outro script sem interromper o atual, o outro deve
> > rodar "em background", para isto basta colocar um "&" (sem as aspas)
> > no
> > final da linha. O outro script começa a rodar e o atual continua
> > imediatamente na linha seguinte.
> >
> > Alain
> >
> > Karin Klayton Schiochet escreveu:
> > > 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 <karinklayton%40gmail.com>
> Tel: (91) 8121-5809
>
>  
>



-- 
Randolph Chaves

Linux user:  328852


[As partes desta mensagem que não continham texto foram removidas]



reply via email to

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