Os comandos Nohup aceitam um comando ou um executável como argumento. Depois de executar um comando com nohup, ele ignora os sinais de espera (suspiro), o que ajuda a manter um processo em funcionamento após fechar a sessão da concha.
Por exemplo, se você executar um comando sobre SSH, todos os processos iniciados na sessão SSH fecharão assim que a sessão SSH morrer. Você pode impedir que isso aconteça usando um multiplexador de terminal, como tmux ou tela ou use nohup.
Como usar o comando Nohup
Para usar nohup, passamos o comando como um argumento. A sintaxe geral para o comando é:
nohup [comando] [args]
Como executar um comando com nohup
Para executar um comando, como um ping, com nohup, use o comando:
Nohup ping linuxhint.com> /dev /null
Depois de executar o comando com nohup, você deve obter uma saída como:
Nohup: ignorando a entrada e redirecionando o stderr para o stdout
Por padrão, Nohup executa um processo em primeiro plano enquanto redireciona a saída para Nohup.arquivo out. O arquivo está localizado no diretório de trabalho atual, a menos que o usuário não tenha permissões de gravação nesse diretório. Nesse caso, o Nohup.O arquivo out é criado no diretório inicial do usuário.
Para ver o conteúdo do Nohup.OUT FILE, use o comando CAT como:
gato nohup.TXT
Como usar nohup com processos de fundo
Executar um processo em segundo plano é a maneira mais eficaz de usar o comando Nohup. Executar um processo de fundo com Nohup permite que você feche o processo pai (shell) sem matar seu processo.
Para fazer isso, use os ampeiros e após o comando como:
Nohup Sleep 300 &
Depois de executar o comando acima, o shell iniciará o comando Sleep em segundo plano e anexa o suspiro ignorado ao processo.
Para visualizar processos de fundo, use o comando de trabalhos -l.
Como redirecionar a saída Nohup para um arquivo
Se você não especificar o arquivo de saída, nohup redireciona a saída para um Nohup.arquivo out. Você pode substituir isso usando os símbolos de redirecionamento.
Por exemplo, para redirecionar a saída do comando ping para ping.fora, use o comando:
Nohup ping linuxhint.com> ping.fora 2> & 1 &
Adicionar os descritores de arquivo 1 e 2 permite a saída padrão e redirecionar erros padrão para o ping.arquivo out.
Você também pode escolher arquivos diferentes para saída e erro padrão. Como:
Nohup ping linuxhint.com 1> ping.fora 2> ping.err &
Conclusão
Podemos usar o comando Nohup para impedir que um processo termine assim que o processo pai terminar. Usando parâmetros de redirecionamento, também podemos redirecionar a saída de Nohup para um arquivo personalizado.