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

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

Re: Carregar programa apos EXIT


From: leogildo_silva
Subject: Re: Carregar programa apos EXIT
Date: Sat, 24 Jan 2004 02:23:05 -0000
User-agent: eGroups-EW/0.82

Marcelo,

Não sei bem como você programa por aí, mas como todos sabem, existem 
muitas formas de se chegar ao mesmo resultado, principalmente com 
shell-script.

Quando comecei a caminhada no shell -- com SOX rodando debaixo do 
SOD --, escrevia soluções do tipo "tudo_em_um_só_script".

Obs.: grande parte do que sei, aprendi escrevendo linhas de comandos 
para execução no ambiente SOD (:FT e :FL), o que seria um primo do 
nosso shell-script de hoje.

Isto gerava programas enormes, e normalmente, de dificil manutenção.

Apesar de ainda não ter (na ocasião) boa lógica, e domínio dos 
recursos do ambiente, consegui simplificar os processos mudando para 
o conceito de scripts modulares, e adotando para gerenciamento, o que 
você chama de "programa principal".

Posteriormente fiz um curso bacana de lógica e algorítimo, o que me 
ajudou, e muito, a escrever shell-scripts com muito mais facilidade.

Ao longo do tempo, trabalhei com vários SO's (Xenix, SCO Unix, Edix5, 
Aix e HP-ux), e atualmente escrevo shell-scripts para ambiente 
Solaris e Linux.

Antigamente eu criava os scripts, alterava os atributos para torná-
los executáveis, e mandava ver, digitava após o "prompt" o nome do 
programa (script) + <ENTER>, e pronto.

Hoje prefiro trabalhar com "exec", pois acho que é a melhor opção 
quando se trabalha com o modo interativo, do tipo "menu + opções".

Alguns colaboradores da lista, já deram dicas corretas sobre a 
solução do seu problema, e acho que você deve revisar a sua lógica.

Creio que em qualquer linguagem, o EXIT, interrompe a execução 
incondicional do programa.

No caso do seu exemplo, o EXIT encerra incondicionalmente o seu shell-
script, sem executar o "conectados.sh", obviamente.

Em algumas estruturas, o uso do RETURN pode ser mais indicado que o 
EXIT, e apesar de serem parecidos, acredite, são bem diferentes.

Você cita que testou "EXIT 0 | /bin/conectados ...", e aí vai uma 
dica de segurança:

Não é prudente instalar programas debaixo do /bin.


Boa Sorte! 


--- Em address@hidden, "Marcelo" <marcelo@i...> 
escreveu
> Manow eu realmente preciso que ele seja executado apos o "EXIT 0" 
Pois apos o meu prog principal me retornar esse Valor 0 eu chamaria o 
meu script conectados.sh que dah o comando RADWHO e grava num TXT os 
usuarios conectados no servidor e jogo para o meu servidor de PAGINA 
que eh oq eu preciso FAZER ,... mas enquando num consguir gerar o TXT 
LOGO APOS a Conecção de cada cliente naum conseguirei executar as 
tarefas necessarias :(
> 
> Se alguem souber eu agradeço
> tentei 
> EXIT 0 | /bin/conectados 
> 
> mas tb naum deu :(
> Valeu
>   ----- Original Message ----- 
>   From: Rodolfo Villanova - TmS Brasil 
>   To: address@hidden 
>   Sent: Friday, January 23, 2004 12:09 PM
>   Subject: RES: [shell-script] Carregar programa apos EXIT
> 
> 
>   Se tu inverter as linhas do 'exit 0' e do '/bin/conectados.sh', 
não atende a
>   tua necessidade?
>   Se não, nunca o teu script conectados.sh vai ser executado.
> 
>   Por outro lado, se o teu script 'conectados.sh' precisa receber 
algum sinal
>   '0' ou '1', então modifica-o pra ele receber esse dado como 
parâmetro:
> 
>   ...
>      /bin/conectados.sh 0 &
>      exit
>   ...
> 
>   O sinal '&' ao final da linha é pra ele executar esse processo
>   independentemente da continuidade da execução do script em que 
ele foi
>   chamado, que no caso será o seu término pela execução do 'exit'.
> 
>   -----------------
>   Rodolfo Villanova
> 
> 
>   > -----Mensagem original-----
>   > De: Marcelo [mailto:marcelo@i...]
>   > Enviada em: sexta-feira, 23 de janeiro de 2004 11:21
>   > Para: address@hidden
>   > Assunto: [shell-script] Carregar programa apos EXIT
>   >
>   >
>   > Pessoal preciso carregar outro programa apos a execução desse 
Script
>   > apos o EXIT 0 preciso Chamar o programa /bin/conectados.sh mas
>   > com esse EXIT 0 ele num chama pq o Exit sai do Script atual e 
num
>   > chama o Meu Conectados.sh
>   >
>   > if [ "$ALLOW" = "$1" ]; then
>   >   if [ $HAVE -lt $UNIT ]; then
>   >   exit 0
>   >   /bin/conectados.sh
>   >   else
>   >     exit 1
>   >   fi
>   > fi
>   > if [ "$LOGGED" = "$1" ] ; then
>   >   exit 1
>   > else
>   >   exit 0
>   >   /bin/conectados.sh
>   > fi
>   > Existe alguma forma de fazer isso ???
>   > Valeu pela atençao pessoal
>   >
>   > [As partes desta mensagem que não continham texto foram 
removidas]
>   >
>   >
>   >
>   > ----------------------------------------------------------------
-----
>   > Esta lista não admite a abordagem de outras liguagens de
>   > programação, como perl, C etc. Quem insistir em não seguir esta
>   > regra será moderado sem prévio aviso.
>   > ----------------------------------------------------------------
-----
>   > Sair da lista: address@hidden
>   > ----------------------------------------------------------------
-----
>   > Esta lista é moderada de acordo com o previsto em
>   http://www.listasdiscussao.cjb.net
>   ------------------------------------------------------------------
---
> 
> 
>   Seu uso do Yahoo! Grupos é sujeito às regras descritas em:
>   http://br.yahoo.com/info/utos.html
> 
> 
> 
> 
> 
> 
>   ------------------------------------------------------------------
---
>   Esta lista não admite a abordagem de outras liguagens de 
programação, como perl, C etc. Quem insistir em não seguir esta regra 
será moderado sem prévio aviso.
>   ------------------------------------------------------------------
---
>   Sair da lista: address@hidden
>   ------------------------------------------------------------------
---
>   Esta lista é moderada de acordo com o previsto em 
http://www.listasdiscussao.cjb.net
>   ------------------------------------------------------------------
---
> 
> 
> 
>         Yahoo! Groups Sponsor 
>                    
>                      
>                     Assine Nova em
>                     4x s/juros de R$ 20,70 Assine Info em
>                     5x s/juros de R$ 19,08 
>                                 Mais... Boa Forma Exame Você S/A 
Claudia 
>                          
>                    
>              
>        
> 
>   Seu uso do Yahoo! Grupos é sujeito aos Termos do Serviço Yahoo!. 
> 
> 
> [As partes desta mensagem que não continham texto foram removidas] 


reply via email to

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