Executar programa e receber o PID [RESOLVIDO]

1. Executar programa e receber o PID [RESOLVIDO]

Perfil removido
removido

(usa Nenhuma)

Enviado em 30/01/2013 - 15:30h

Olá, estou terminando um script que, em determinado momento, preciso executar um programa X e preciso descobrir o PID dele, porém, como é um script multi tarefas, haverá várias execuções do programa X, pois, terei que matar o programa X pelo PID, para não matar todas as outras execuções do programa X.

Em resumo, há como eu executar um programa e logo descobrir seu PID?

Não creio que o uso do ps -A e do grep vai resolver, neste caso, seria impreciso...


  


2. MELHOR RESPOSTA

Perfil removido
removido

(usa Nenhuma)

Enviado em 30/01/2013 - 15:45h

Com certeza amigo, pesquise sobre variáveis especiais do shell. O que você quer está na variável $!.

echo $!
ou
PIDPROGX=$!

:)


Renato,
renato_pacheco escreveu:

Depois da execução, faça:


$?


Essa variável que você falou é para checar se o comando foi executado com sucesso ou não (0 e 1 respectivamente).




3. Re: Executar programa e receber o PID [RESOLVIDO]

Renato Carneiro Pacheco
renato_pacheco

(usa Debian)

Enviado em 30/01/2013 - 15:44h

Depois da execução, faça:


"$?" (sem aspas)



4. Re: Executar programa e receber o PID [RESOLVIDO]

Sandro Marcell
smarcell

(usa Slackware)

Enviado em 30/01/2013 - 16:00h

Para processos executados em "foreground" você usa a variável especial: $$

Já para os executados em "background", use: $!


5. Re: Executar programa e receber o PID [RESOLVIDO]

Perfil removido
removido

(usa Nenhuma)

Enviado em 30/01/2013 - 16:25h

valeu galera! Era a variável $! que precisava, valeu! Resolvido! Obrigado pela grande ajuda! Logo logo posto meu script para vocês verem. Muito obrigado!