Muito legal, isso, estava com problema parecido e você acabou ajudando a 
resolve-lo. Valeu pela colaboração, foi útil.

 
________________________________
Rogério Tomassoni A. Jr.
Celular:   19 9303-1883
Msn:       jrtomass...@hotmail.com





________________________________
De: Marcus Thiago Lages Duarte <marcus_rj...@yahoo.com.br>
Para: lpi@yahoogrupos.com.br
Enviadas: Sábado, 14 de Novembro de 2009 18:36:18
Assunto: Re: [lpi] comado exec

  
Excelente explicacao do conrado. Acrescentando um exemplo prático do comando 
exec que me foi extremamente útil há um tempo atrás.

Eu precisava colocar um usuário dentro de um script interativo ao fazer logon 
via ssh, após terminar o script o usuário era desconectado da sessao. O usuário 
não poderia em momento algum ter acesso ao shell, so deveria executar o script 
e sair. 
Beleza, coloquei o script dentro do .bashrc para executar no logon, so que 
tinha um detalhe, o usuário poderia apertar control-c a qualquer momento e sair 
do script e com isso ter acesso ao shell, o que eu realmente nao queria.
Solução? coloquei o script utilizando o exec antes. Tipo -> exec /bin/myscript. 
Pronto! Agora caso o usuário fosse espertinho e digitasse control-c ele 
simplesmente era expulso do logon, já que meu script com o "exec" na frente 
deixou de ser um processo filho do bash, mas passou a ser o real (único) shell 
do usuário.

Abs!

--- Em qua, 11/11/09, Conrado Pinto Rebessi <conradopinto@ gmail.com> escreveu:


>De: Conrado Pinto Rebessi <conradopinto@ gmail.com>
>Assunto: Re: [lpi] comado exec
>Para: l...@yahoogrupos. com.br
>Data: Quarta-feira, 11 de Novembro de 2009, 22:58
>
>
>>
>
>
>
>  >
>
> 
>>      
> 
>Da pagina de manual do bash(1), lah pela linha 3150...
>
>exec [-cl] [-a name] [command [arguments]]
>              If  command  is  specified,  it  replaces  the shell.  No new 
> process is created
>traduzindo: Se um comando é especificado, ele toma o lugar do shell. Não é 
>criado um novo processo.
>>Basicamente, vc tem q pensar em gerencia de processos. O normal, qdo vc chama 
>>um comando, o kernel "forka" (termo bonito, nao?) um novo processo, ou seja, 
>>o bash q vc tava usando continua existindo e eh criado um novo processo. Qdo 
>>vc usa o exec, o processo q vc chamou toma o lugar do bash.
>
>Olha o exemplo:
>
>Sem exec:
>$ pstree -p | grep -B 1 pstree
>                        |-bash(5593) -+-bash(5620)
>                        |            `-pstree(5619)
>conr...@conrado- tablet:~$ ksh
>$ pstree -p | grep -B 1 pstree
>>                        |-bash(5593) ---ksh(5621) -+-grep(5623)
>                        |                        `-pstree(5622)
>
>Com exec:
>$ pstree -p | grep -B 1 pstree
>>                        |-bash(5563) -+-grep(5581)
>>                        |            `-pstree(5580)
>>$ exec ksh
>>$ pstree -p | grep -B 1 pstree
>>                        |-ksh(5563)- +-grep(5584)
>>                        |           `-pstree(5583)
>
>
>Ajudei?
>
>[]'s
>
>Conrado
>
>
>2009/11/10 Wairisson <wgom...@yahoo. com.br>
>
>>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>  >>
>>
>>>>
>> 
>>>>      
>> 
>>alguém pode me dar uma descrição mais tangente do uso prático do comando  
>>exec ???
>>
>>>>Desde já obrigado a tdos !
>>
>>
>
>
>-- 
>Conrado Pinto Rebessi
>conradopinto@ gmail.com
>Linux Registered User #179496
>http://counter. li.org - Get Counted!
>
>|_|0|_|
>|_|_|0|
>|0|0|0|
> 

________________________________
Veja quais são os assuntos do momento no Yahoo! + Buscados: Top 10 - 
Celebridades - Música - Esportes
 


      
____________________________________________________________________________________
Veja quais são os assuntos do momento no Yahoo! +Buscados
http://br.maisbuscados.yahoo.com

Responder a