Você pode usar a saída do comando ps, ou então invocar um script (em C-Shell ou Korn Shell, ou talvez em Bash) que mande o PID para um arquivo, de onde você possa lê-lo.
Re:Capturar PID de processo ambiente Solaris
3 Respostas
Para saber qual é o que você tem de fechar, provavelmente você é que terá de criá-lo. Por exemplo, digamos que você queira assassinar o seguinte programa, que você iniciou de alguma maneira:
java -cp . Teste &
Como você deve saber, já deve haver um monte de programas "java" na memória e você pode acabar cometendo suicídio. Uma forma boba de fazer isso é executar um script que jogue o PID em um arquivo conhecido, digamos:
#!/bin/ksh
java -cp . Teste &
echo $? > /tmp/pidMeuPrograma
Eu pus "$?" mas como não estou com a documentação do ksh aqui (veja man ksh) e estou fazendo de memória, talvez seja outra variável, também começada por $, que você tenha de usar.
Aí o script vai gerar um arquivo com o número do PID, que você pode ler e talvez até usar em outro script, para poder assassinar o tal programa teimoso.
Bom dia à todos!
Alguem sabe uma forma de capturar o PID de um processo rodando em ambiente Solaris?
Preciso fazer isso em Runtime de uma aplicação para que eu tenha a opção de cancelar o processo em andamento.
At.
Anderson
Eu criei um esquema com o ps -ef, porém como o mesmo processo pode ter várias instancias rodando, me perdi quando precisei saber qual dos processos era o que de fato eu deveria fechar.
Estava dando uma lida e achei esse cara:
Alguem já ouviu falar??
At.
Anderson