Você pode enviar um SIGHUP (Ctrl-Z) ou SIGTERM (Ctrl-C). O primeiro simplesmente pausa o programa, você pode continuar com fg
(ou continuar como um processo em segundo plano, usando bg
).
Ao executar um programa que entra em um loop infinito no terminal, como eu traria de volta o prompt de comando?
(estou usando o Fedora core 5)
Você terá que matar o programa usando Ctrl + C onde C significa Cancelar.
Ou Ctrl-C como mencionado, ou se isso não funcionar, abra outro terminal, encontre o processo usando ps -ef | grep, encontre o ID do processo (pid), e use o comando kill: kill -9
Inicie o programa com &
no final para que ele seja executado em segundo plano. Observe que, se você sair do terminal, o aplicativo também poderá / irá parar.
root@root:~$ run_app with params &
Usar Ctrl+C
irá eliminá-lo se você esqueceu o &
.
Existe nenhuma maneira de provar que qualquer programa arbitrário terminará sem executá-lo até o fim.
Tendo dito isto, é possível configurar um cão de guarda através de, e. D-Bus que pode matar um programa se uma resposta não for recebida dentro de um determinado período de tempo.
Como mencionado, você pode simplesmente adicionar um & para a linha de comando. Você também pode pressionar CTRL-Z (isso coloca o processo no estado Stopped) e, em seguida, digite bg para colocá-lo em execução novamente em segundo plano ...
Você pode pressionar Ctrl + C .
você pode pressionar ctrl + z tipo: ps ux, para ver o processo em execução, se o que você quer matar está lá
tipo: kill -9 processId, onde o id do processo é o id do processo de loop
Tags gcc linux infinite-loop