J'ai un code fonctionnant sur un serveur Linux. Comme cela prend des heures à s'exécuter, je dois utiliser Nohup
pour m'assurer que mon code fonctionne toujours au cas où je perdrais ma connexion au serveur. Comme je dois encore attendre des heures pour voir les résultats, j'ai défini un compteur pour imprimer la progression de mon code (%). Si je perds ma connexion au serveur ou ferme le terminal, la seule façon de voir que le code est toujours en cours d'exécution est d'utiliser top
. Existe-t-il un moyen de voir à nouveau la console de sortie (message indiquant la progression)?
Vous pouvez rediriger la sortie standard et l'erreur standard vers un fichier et consulter ce fichier. par exemple:
Nohup command 2>&1 > outputfile &
notez le comportement par défaut de la page de manuel:
Si la sortie standard est un terminal, ajoutez la sortie à 'Nohup.out' si possible, '$ HOME/Nohup.out' sinon. Si l'erreur standard est un terminal, redirigez-le vers la sortie standard
donc vraiment vous pouvez simplement courir
Nohup command &
puis regardez dans Nohup.out
Vous pouvez voir la sortie en temps réel en exécutant ci-dessous à partir d'un autre terminal.
tail -f Nohup.out