Si va a hacer las redirecciones usted mismo, casi no tiene ninguna utilidad nohup; bash life.bash >life.out 2>life.err </dev/null & disown -h "$!"hace lo mismo usando solo la funcionalidad integrada en el propio shell.
Charles Duffy
Respuestas:
12
Eso solo nohupte dice lo que está configurado; lo envía a su error estándar, al que ha redirigido nohup.err. Puede evitar el mensaje redirigiendo su entrada estándar:
nohupcomprueba su entrada estándar, salida estándar y error estándar para ver cuáles están conectados a un terminal; si encuentra alguno que esté conectado, los maneja según corresponda (ignorando la entrada, redirigiendo la salida a nohup.out, redirigiendo el error a la salida estándar), y le dice lo que ha hecho. Si no encuentra nada que necesite desconectar, no genera nada por sí mismo.
Espero que eso signifique que ignora todas las entradas del teclado en sentido simple, ya que se ejecuta en segundo plano.
Manohar Reddy Poreddy
3
man nohup
"Si la entrada estándar es una terminal, rediríjala desde un archivo ilegible".
Por lo tanto,
nohup: ignoring input and appending output to 'nohup.out'
Está haciendo lo que se supone que debe hacer, a pesar de las entradas de OPCIÓN , por eso se descarta la entrada.
TAMBIÉN Parece que está haciendo un uso redundante de la redirección. nohup ya crea un nohup.out para usted y, si todo funciona bien, stderr también debe redirigirse allí.
nohup
;bash life.bash >life.out 2>life.err </dev/null & disown -h "$!"
hace lo mismo usando solo la funcionalidad integrada en el propio shell.Respuestas:
Eso solo
nohup
te dice lo que está configurado; lo envía a su error estándar, al que ha redirigidonohup.err
. Puede evitar el mensaje redirigiendo su entrada estándar:nohup
comprueba su entrada estándar, salida estándar y error estándar para ver cuáles están conectados a un terminal; si encuentra alguno que esté conectado, los maneja según corresponda (ignorando la entrada, redirigiendo la salida anohup.out
, redirigiendo el error a la salida estándar), y le dice lo que ha hecho. Si no encuentra nada que necesite desconectar, no genera nada por sí mismo.fuente
nohup
te dice exactamente lo que está haciendo, que está ignorando la entrada.Si desea evitar este mensaje, redirija stdin de
/dev/null
esta manerafuente
"Si la entrada estándar es una terminal, rediríjala desde un archivo ilegible".
Por lo tanto,
Está haciendo lo que se supone que debe hacer, a pesar de las entradas de OPCIÓN , por eso se descarta la entrada.
TAMBIÉN Parece que está haciendo un uso redundante de la redirección. nohup ya crea un nohup.out para usted y, si todo funciona bien, stderr también debe redirigirse allí.
¡Salud!
fuente