Je voudrais rediriger la sortie générée à partir d'une application d'arrière-plan sous Linux vers / dev / null.
J'utilise l'éditeur de texte kate et il imprime tous les messages de débogage sur le terminal que je voudrais rediriger vers / dev / null.
Une idée comment faire?
Merci
Réponses:
Tu utilises:
S'il doit s'exécuter en arrière-plan, ajoutez un
&
>/dev/null 2>&1
signifie redirigerstdout
vers/dev/null
ETstderr
vers l'endroit où lesstdout
points à ce momentSi vous voulez
stderr
se produire sur la console et ystdout
aller,/dev/null
vous pouvez utiliser:Dans ce cas
stderr
est redirigé versstdout
(par exemple votre console) et ensuite l'originalstdout
est redirigé vers/dev/null
Si le programme ne doit pas se terminer, vous pouvez utiliser:
Sans aucun paramètre, toutes les sorties arrivent dans nohup.out
la source
dup2()
se produit immédiatement aprèsfork()
mais avantexec*()
. Une foisexec*()
le programme exécuté, le shell n'a pas la capacité de rediriger la sortie de ce processus. Corrigez-moi si je me trompe, mais je ne connais pas un shell qui a implémenté une telle fonctionnalité.Ceux-ci redirigeront également à la fois:
bien que le manuel bash indique que le premier est préféré.
la source