Respostas:
Isso está apenas nohup
dizendo o que está configurado; ele gera esse erro padrão, para o qual você redirecionou nohup.err
. Você pode evitar a mensagem redirecionando sua entrada padrão:
nohup bash life.bash > nohup.out 2> nohup.err < /dev/null &
nohup
verifica sua entrada padrão, saída padrão e erro padrão para ver quais estão conectados a um terminal; se encontrar algum que esteja conectado, ele será tratado como apropriado (ignorando a entrada, redirecionando a saída para nohup.out
, redirecionando o erro para a saída padrão) e informa o que foi feito. Se não encontrar nada que precise desconectar, não produzirá nada.
nohup
está dizendo exatamente o que está fazendo, que está ignorando as entradas.
Se você quiser evitar esta mensagem, redirecionamento stdin de /dev/null
como este
nohup bash life.bash </dev/null >nohup.out 2>nohup.err &
man nohup
"Se a entrada padrão for um terminal, redirecione-a de um arquivo ilegível."
Conseqüentemente,
nohup: ignoring input and appending output to 'nohup.out'
Ele está fazendo o que deve fazer, não obstante as entradas OPTION , é por isso que a entrada está sendo descartada.
TAMBÉM Parece que você está fazendo uso redundante de redirecionamento. nohup já cria um nohup.out para você e, se tudo estiver funcionando bem, o stderr também deve ser redirecionado para lá.
Felicidades!
nohup
;bash life.bash >life.out 2>life.err </dev/null & disown -h "$!"
faz o mesmo usando apenas a funcionalidade incorporada no próprio shell.