
Estou escrevendo um script para interromper um aplicativo. Às vezes, o aplicativo não quer parar. Então, depois de uma pausa de vários minutos, se o aplicativo ainda estiver em execução, quero encerrá-lo. Após uma série de falhas no comando kill, tentei adicionar -9 para forçar a interrupção. Isso não parece funcionar. Alguém sabe como posso fazer isso funcionar, mesmo que precise usar um comando diferente, estou aberto a coisas novas. :-)
A seguir está minha linha de comando:
ps -ef|grep -v grep|grep <process_name>|awk -F' ' '{print $2}' |xargs kill -9
Desde já, obrigado.
Responder1
Exemplo de como fechar php
processos em lote. php
você pode substituir usando qualquer nome do seu processo:
ps -aux | grep php | awk '{print $2}' | xargs kill -9
Responder2
@muru estava correto, mas ultimamente descobri que é preferível usar a opção '-f' para pkill. Corresponde a todo o processo e lista de argumentos. Aqui temos alguns servidores executando processos Tomcat e Logstash (enviando dados para Elastic). Portanto, 'kill -9 java' para interromper o processo Tomcat também mata o processo Logstash.
pkill -9 -f 'pattern to match'
Exemplo:
pkill -9 -f '/opt/tomcat/'