Podrías comenzar tu tubería en un screen
sesión. Pulsación de tecla Ctrl-a y luego d separará la sesión de pantalla de su terminal. A continuación, puede salir de forma segura de su terminal; la tubería seguirá funcionando. Usa screen -r
para volver a conectarse a la sesión.
No, debe agregar el nohup a los comandos por separado.
Se recomienda algo como esto:
nohup sh -c "cmd1 | cmd2" &
O alternativamente:
nohup $SHELL <<EOF &
cmd1 | cmd2
EOF
Como alternativa a nohup
, recomiendo
( cmd1 | cmd2 ) > logfile < /dev/null 2>&1 &
Al redirigir stdin, stdout y sterr desde la terminal, esto logra el mismo efecto que nohup con una sintaxis que, al menos, prefiero.
Siempre puede crear un archivo de script y ejecutarlo con nohup:
echo "cmd1 | cmd2" > nohupScript.sh
nohup nohupScript.sh &