Como enviar um processo para segundo e primeiro plano?

Como enviar um processo para segundo e primeiro plano?

Se eu fizer isso ping google.com &, o processo ficará em segundo plano e continuará mostrando os detalhes do ping. Ainda posso usar o terminal com outros comandos, mas a saída do ping e a saída de outros comandos se confundem (o que não é um problema), mas não consigo encerrar esse processo de ping.

Para isso quero trazê-lo para primeiro plano e pressionar ctrl + c ou algo assim. Tentei usar fg, mas também não funcionou. Então, como faço ping google.com &para voltar ao primeiro plano depois de pressionar a tecla Return no final do meu comando ping?

Responder1

fgé o comando correto para colocar um trabalho em primeiro plano, mas se houver mais de um trabalho em execução, você deverá especificar o número do trabalho. Se você digitar apenas fg, o último trabalho em segundo plano (considerado o trabalho atual pelo shell) será colocado em primeiro plano.

Obtenha os empregos atuais:

$ jobs
[1]+     ping google.com &

Coloque o trabalho em primeiro plano especificando o número:

fg %1

O comando pode ser interrompido pela saída do processo em execução, mas ainda funcionará, você pode ignorar a interrupção.

Em seguida, pressione ctrl+ cpara interromper e parar o processo

Conforme mencionado em um comentário, você também pode enviar sinais por número de trabalho, por exemplokill %1

Para completar, se você não usou o &no momento de chamar o processo, você pode enviá-lo para segundo plano primeiro congelando com ctrl+ ze depois digitandobg

informação relacionada