Suspenda o processo com CTRL + Z e use o comando bg
para reiniciá-lo em segundo plano. Por exemplo:
sleep 60
^Z #Suspend character shown after hitting CTRL+Z
[1]+ Stopped sleep 60 #Message showing stopped process info
bg #Resume current job (last job stopped)
Mais sobre controle de trabalho e bg
uso na bash
página do manual:
JOB CONTROL
Digitar o caractere suspenso (normalmente ^ Z, Control-Z) enquanto um processo está em execução faz com que esse processo seja interrompido e retorna o controle para o bash. [...] O usuário pode então manipular o estado desse trabalho, usando o comando bg para continuar em background, [...]. A ^ Z entra em vigor imediatamente e tem o efeito colateral adicional de fazer com que a saída pendente e o início de digitação sejam descartados.
bg [ jobspec ...]
Retoma cada job jobspec suspenso em segundo plano, como se tivesse sido iniciado com &. Se jobspec não estiver presente, a noção do shell do trabalho atual é usada.
EDITAR
Para iniciar um processo em que você pode até matar o terminal e ele ainda continua em execução
nohup [command] [-args] > [filename] 2>&1 &
por exemplo
nohup /home/edheal/myprog -arg1 -arg2 > /home/edheal/output.txt 2>&1 &
Para simplesmente ignorar a saída (não muito inteligente), altere o nome do arquivo para /dev/null
Para obter a mensagem de erro definida para um arquivo diferente, altere o &1
para um nome de arquivo.
Além disso: você pode usar o jobs
comando para ver uma lista indexada desses processos em segundo plano. E você pode matar um processo em segundo plano executando kill %1
ou kill %2
com o número sendo o índice do processo.