¿Es posible dejar que un proceso comience con nohup, escribir en stdout en lugar de en un archivo? o tal vez en el archivo y en la pantalla?
nohup python start.py &
escribe nohup.out, pero me gustaría que salga a la pantalla, nohup solo se entiende como una cobertura cuando se corta la conexión.

Respuestas:
nohup python start.py & tail -f nohup.outSetail -fpuede matar y reiniciar a voluntad.screen python start.pyy desconectar / reconectar a voluntad.fuente
De
man nohup:(completamente revisado en función de los comentarios)
Al salir de un shell o cerrar un terminal, los procesos secundarios se enviarán SIGHUP (bloqueo, el nombre se origina desde el momento en que los terminales marcarían en la computadora UNIX) para decirles que el terminal no funciona Ya conectado. Además, cuando finaliza el proceso de shell, se cerrarán las secuencias stdin, stdout y stderr del proceso secundario. Por lo general, esto hace que el proceso del niño muera. Por lo general, esto es bueno porque evita que los procesos se ejecuten sin usuario.
El propósito del
nohupprograma es mantener el proceso en ejecución incluso después de que el shell finalice y el terminal se desconecte. Como tal, dirigir su salida al terminal anula completamente el propósito. Mi respuesta original (nohup COMMAND | cat) no fue útil porque: cuando el terminal está cerrado, la salida de cat está cerrada y cat muere, lo que rompe la tubería y envía un SIGPIPE al proceso de nohup que lo hace morir. Había respondido la pregunta sin pensar en el propósito.Para lograr su propósito, ejecute
nohup COMMAND > FILEpara seleccionar el nombre del archivo para dirigir la salida. Luego, usetail -f FILEpara ver la salida en un terminal.De manera similar, se podría usar la siguiente construcción de shell:
COMMAND >FILE 2>&1 </dev/null ¶ ejecutar un comando cuyas secuencias stdio no estén conectadas al terminal y puedan continuar ejecutándose después de que el terminal se cierre. Además, en zsh, ejecute el shell-builtindisownpara decirle a zsh que abandone el proceso en lugar de matarlo cuando finalice el shell.fuente
tail -f filenamepara ver lo que está escrito en el archivo.fuente