como executar os comandos Bash em segundo plano no Linux

não há nada mais irritante do que executar um comando no seu terminal e fazê-lo correr durante minutos, por vezes horas, e não ser capaz de usar o seu terminal de novo. Claro, você pode usar tabs, mas essa é uma solução desajeitada, e nem sempre é ótima, porque você pode querer ver atualizações à medida que você está trabalhando. Aqui mostramos algumas maneiras diferentes de executar comandos bash no fundo do Linux.,

End a Command with &

If you want to push a command into the background, using & at the end is an easy way to do that. Desta forma, você pode emitir um comando em segundo plano e continuar a usar o seu terminal à medida que ele corre. Mas vem com um senão. A utilização de & não desconecta o comando para longe de si; apenas o empurra para o fundo., Isto significa que, enquanto você está tentando usar o terminal, qualquer coisa que o comando quiser empurrar para ou STDERR ainda será impresso, o que pode ser uma distração.

COMANDO &

Quando o terminal sessão é fechada, o comando termina., Você também pode matar o comando emitindo o id

, encontrando o número do comando que está em execução, e matando-o com o comando kill. Essa sintaxe é a seguinte:

kill %1

Usando a tag & é bom se você precisar de empurrar algo para um pouco, mas não espere que ele continue para sempre.,

& After a Command, Then Disown It

Running a command with just & pushes it off to the back and keeps it running as long as the terminal window is open. Se, no entanto, quiser manter este comando a correr em constante, mesmo com o fim da sua sessão terminal, poderá usar o comando disown.

para usar este método, comece por adicionar um &.,

COMANDO &

Como mencionado acima, o uso de & empurra esse comando no fundo, mas não o desligar do seu usuário. Você pode verificar isso digitando jobs no terminal. Vai mostrar o comando a correr em segundo plano, como vimos antes.

apenas digite disown na shell, e fará exatamente isso. (E você pode mais uma vez verificar isso com o comando jobs.,)

Você pode apenas fazer o disown comando lá

Agora você pode fechar o terminal e continuar com o seu dia. Ele ainda vai manter piping coisas para ouSTDERR, mas uma vez que você sair e reabrir o seu terminal, você não vai ver nada lá., Você pode encontrar novamente o comando com top ou ps comandos e matá-lo com o kill comando.

O deserdado trabalho é o segundo, com o PID 16238.,

& Depois de um Comando com /dev/null

Adicionar & depois de um comando fará um comando para o plano de fundo, mas como resultado, o comando de fundo continuará a imprimir mensagens no terminal como você está usando-o. Se você está procurando evitar isso, considere redirecionar o comando para /dev/null.,

COMANDO &>/dev/null &

Isso não impede que o comando de fechamento quando o terminal fecha. No entanto, como mencionado acima, é possível usar disown para deserdar o comando de execução do Usuário. Você também pode matá-lo em qualquer um dos métodos mencionados acima, se você não quer que ele corra mais.,

Nohup, com & e /dev/null

ao contrário do anterior, comandos, usando nohup permite que você executar um comando no fundo e mantê-lo funcionando. Como? nohup contorna o sinal HUP (suspensão de sinal), tornando possível executar comandos em segundo plano, mesmo quando o terminal está desligado. Combine este comando com redirecionamento para “/dev/null” (para evitar que nohup faça um nohup.Out file), e tudo vai para o fundo com um comando.,

nohup COMANDO &>/dev/null &

a Maioria dos programas de terminal no Linux hoje tem funcionalidades incorporadas para permitir a execução em segundo plano, com pouco esforço. Junto com isso, os sistemas init modernos (como systemd) podem permitir que os usuários iniciem programas como serviços no boot ou em qualquer lugar.,

ainda assim, alguns programas no Linux não têm a capacidade de executar como um daemon ou integrar-se com sistemas init modernos. Este é um inconveniente real, mas é compreensível, como nem todos os desenvolvedores têm a habilidade ou tempo para adicionar novos recursos.

felizmente, comandos como nohupoudisown ainda são uma realidade e podem fechar a lacuna em mover programas como este para o fundo. Não são perfeitos ou chiques, mas fazem o trabalho quando precisam.,se gostou deste artigo do Linux, certifique-se de verificar alguns dos nossos outros conteúdos do Linux, como como ligar a sua conta Google ao GNOME Shell, 5 dos melhores Distros do Linux para os utilizadores do Windows em 2021 e 15 comandos LS que precisa de conhecer.

relacionado:

John Perkins

John é um jovem profissional técnico com uma paixão por educar os usuários sobre as melhores maneiras de usar sua tecnologia. Ele possui certificações técnicas cobrindo tópicos que vão desde hardware de computador à segurança cibernética à administração do sistema Linux.,

obtenha as nossas histórias entregues à sua caixa de entrada.

Share

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *