Estou usando o CentOS e não consigo descobrir como:
- Mostrar lista de processos/trabalhos em segundo plano atuais (que executo).
- Como executar o processo em segundo plano.
- Como interromper o processo em segundo plano.
Meu comando que desejo executar em segundo plano é assim:
activator run
Até agora encontrei apenas este comando (que executa o processo em segundo plano).
nohup activator run &
Responder1
Isso depende principalmente do seu shell, presumivelmente bash(1)
. A maioria dos outros shells modernos oferece recursos de controle de tarefas semelhantes (ou até idênticos).
- Para iniciar um comando em segundo plano, faça
command &
ounohup command &
(se quiser sair e ainda mantê-lo em execução) - Para interromper o comando em execução,
C-z
(ctrl-Z), para colocar o comando interrompido em segundo plano, façabg
. Comfg
você trazê-lo de volta para o primeiro plano,jobs
informa o que está parado ou em segundo plano.kill %k
mata o número do trabalhok
(fg %k
ou simples%k
) o traz para o primeiro plano. Você pode iniciar o trabalho interrompidok
em segundo plano porbg %k
(ou simplesmente%k &
).
Há um pouco mais de silêncio.
Outra forma bastante flexível é usar screen(1)
, verifique sua página de manual. Com ele você pode iniciar um comando e desconectar, e conectar posteriormente de outro terminal (ou outra máquina pela rede).
Responder2
Sua abordagem deve funcionar ...
Comece o trabalho comnohup activator run &
Verifique o que está acontecendo comjobs -l
Pare com kill PID
(você pode obter o PID com ps -ef | grep activator
)
Eu pessoalmente prefiro screen
-http://linux.die.net/man/1/screen
Comece o trabalho comscreen -d -m activator run
Verifique as sessões de tela comscreen -ls
Pare acessando a janela da tela screen -x
seguida pelo ID da sessão da tela