• Revista PROGRAMAR: Já está disponível a edição #53 da revista programar. Faz já o download aqui!

DarkHipno

Bash - kill process

12 mensagens neste tópico

Boas pessoal, este vai ser o meu primeiro post na comunidade, infelizmente começa logo com uma duvida.

Então é o seguinte necessito de fazer uma pesquisa especifica nos processos que estão a correr numa maquina e localizar a PID do processo por exemplo ola.

ps xau | grep ola -> Aqui será me mostrado então a PID do processo

No entanto preciso de fazer 1 kill ao processo

kill -9 PID -> Ok, o processo morreu

Agora a minha duvida está aqui quero fazer um script que faça a pesquisa da PID e que kill o processo tudo automaticamente, assim podendo correr o script na cron de hora em hora. Fiz algumas pesquisas sobre este assunto o que basicamente eu encontro é tudo deste tipo, só que não funciona.

kill `ps aux | grep Nome do processo | cut -d" " -f 6  | awk -F . '{print $1}'|awk '{print $1}'`

Se me poderem dar uma ajudita era óptimo.

Cumprimentos.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

E por que não killall ola (onde está o "ola" metes o nome do processo)?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

O script ainda nao está feito.

Basicamente o que o script vai fazer é isso localizar a PID de um processo e killar

Não sei se me estou a fazer entender.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Então o que é que não funcionou?

Nunca tive problemas com o killall...

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Também me parece que o killall vai funcionar. No entanto acho que o problema desse que estás a utilizar, está no delimitador que é usado no cut. O delimitador não é apenas um espaço, penso que seja um tab, logo ela nao vai conseguir seleccionar o campo correctamente para poder retirar o pid.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Experimenta kill -9 `pgrep <nome do programa>`

Para isso usava directamente o pkill...

O único problema é que o pgrep/pkill nem sempre existe.

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

ps -aux |  "grep nome do programa" | awk '{print $2}'  | xargs kill -9      ?

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Inflizmente nenhuma das soluções propostas funciona :D

----------

Sven

ps -aux |  "grep nome do programa" | awk '{print $2}'  | xargs kill -9      ?

dark@omega:~/lol$  ps -aux |  grep nome do programar | awk '{print $2}'  | xargs kill -9

Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.7/FAQ

kill 26574: No such process

dark@omega:~/lol$

---------

Mas o engraçado é que ele killa o script conteudo apresenta esse erro lol

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

tens ai um errozinho nas ""  é grep "nome do programa" e não "grep nome do programa"

0

Partilhar esta mensagem


Link para a mensagem
Partilhar noutros sites

Crie uma conta ou ligue-se para comentar

Só membros podem comentar

Criar nova conta

Registe para ter uma conta na nossa comunidade. É fácil!


Registar nova conta

Entra

Já tem conta? Inicie sessão aqui.


Entrar Agora