web-dev-qa-db-fra.com

Comment rediriger la sortie d'une application en arrière-plan vers / dev / null

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 de kate et il imprime tous les messages de débogage sur le terminal que je voudrais rediriger vers/dev/null.

Une idée comment le faire?

Merci

87
Kiran

Tu utilises:

yourcommand  > /dev/null 2>&1

Si cela doit fonctionner en arrière-plan, ajoutez un &

yourcommand > /dev/null 2>&1 &

>/dev/null 2>&1 _ signifie rediriger stdout vers /dev/null AND stderr à l’endroit où stdout pointe à ce moment-là

Si vous voulez que stderr se produise sur la console et que stdout aille à /dev/null vous pouvez utiliser:

yourcommand 2>&1 > /dev/null

Dans ce cas, stderr est redirigé vers stdout (votre console, par exemple) et après l'original stdout est redirigé vers /dev/null

Si le programme ne doit pas se terminer, vous pouvez utiliser:

Nohup yourcommand &

Sans paramètre, toute la sortie atterrit dans Nohup.out

203
evildead

Ceux-ci vont également rediriger les deux:

yourcommand  &> /dev/null

yourcommand  >& /dev/null

bien que le manuel bash indique que le premier est préférable.

2
Jim Hunziker