Eu tenho um script Python que está sendo executado e continuamente despeja erros em um arquivo de log.
Quero editar o script e executá-lo novamente, mas não sei como parar o script.
Atualmente, estou logado no Linux através do PuTTy e estou fazendo toda a codificação lá. Então, existe um comando para parar o script python no linux?
Localize a identificação do processo (PID) do script e emita um
kill -9 PID
para interromper o processo, a menos que esteja sendo executado como seu processo forground no terminal. Nesse caso, você pode usar o Contrl-C para matá-lo.Encontre o PID com este comando:
Ele lista todos os processos python, escolhe o correto e anota seu PID. Então
vai matar o processo. Você pode receber uma mensagem sobre o término de um processo nesse estágio.
Como alternativa, você pode usar o
top
comando para encontrar o processo python. Basta digitark
(para matar) e otop
programa solicitará o PID do processo para matar. Às vezes, é difícil ver todos os processos nos quais você está interessado,top
pois eles podem rolar para fora da tela, acho que aps
abordagem é mais fácil / melhor.fonte
-9
, eu o mataria "suavemente" primeiro. Somente se não reagir, eu usaria-9
.Tente esta linha simples, terminará tudo
script.py
:fonte
Se o programa for o processo atual no seu shell, digitar Ctrl-C interromperá o programa Python.
fonte
Em um mundo perfeito, você deve ler a documentação do script e ver quais sinais devem ser usados para dizer ao final. Na vida real, você provavelmente deseja enviar o sinal TERM, primeiro, talvez usando um sinal KILL se ignorar o TERM. Então, o que você faz é encontrar o ID do processo, usando o comando ps (como alguém já descrito). Então, você pode executar
kill -TERM <pid>
. Alguns programas limpam coisas, como arquivos que eles podem abrir, quando recebem um sinal como esse, por isso é melhor começar com algo assim. Se isso falhar, então não há muito a fazer, exceto o grande martelo:kill -KILL <pid>
. (você pode usar os valores numéricos, por exemplo, -KILL = -9, e eles provavelmente nunca mudarão, mas, no sentido teórico, pode ser mais seguro usar os nomes)fonte
Se você souber o nome do script, poderá reduzir todo o trabalho para um único comando:
Se você quiser ter certeza de que é um script python:
Se você queria matar todos os scripts python:
Suponho que você entendeu a idéia;)
Lembrete: você precisa "" citar o nome do script como está nos exemplos.
fonte