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 <[email protected]>
>
>
> 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
[email protected]
Linux Registered User #179496
http://counter.li.org - Get Counted!
|_|0|_|
|_|_|0|
|0|0|0|