Estou tentando descobrir como executar um comando em segundo plano e trazê-lo para o primeiro plano mais tarde. Estou farto de tutoriais e respostas em que as pessoas afirmam que é simples, basta anexar &
ao final do comando para executá-lo em segundo plano. Está funcionando apenas dentro de uma única janela do terminal. Quero colocar o comando em segundo plano em um terminal e recuperá-lo em primeiro plano depois de reabrir o terminal
Exemplo:
$ grunt &
$ jobs
$ [1]+ Running grunt &
Obviamente, após o fechamento do terminal, nenhum trabalho é encontrado.
Próximo exemplo:
$ grunt & disown #the same behavior has: $ setsid grunt &
$ jobs
$ [nothing] #but ps shows that grunt is working
after close terminal, grunt doesn't work
O que eu fiz errado? Alguém poderia me explicar como executar o comando em segundo plano e recuperá-lo em primeiro plano.
Instalar
screen
:Início
screen
:Execute seus comandos do que você precisa.
Desconecte
screen
-se do terminal (seus comandos ainda estarão em execução):Pressione CTRL+ a+d
Feche o terminal
Abra outro terminal e reconecte a última
screen
sessão:Para obter mais informações e opções extras para
screen
procurarman screen
.fonte
tmux
como uma alternativa parascreen
.Você já tentou:
byobu
outmux
quais são os multiplexadores de terminal. Não é exatamente o que você está procurando, mas tem um comportamento semelhante.Em seguida, execute seu comando para desanexar:
Para retomar:
Consulte https://help.ubuntu.com/community/Screen
fonte