GNU/Linux >> Tutoriels Linux >  >> Ubuntu

Pourquoi puis-je voir la sortie des processus en arrière-plan ?

Par exemple, lorsque je tape ping 8.8.8.8 & , pourquoi pouvons-nous voir le processus ping fonctionner ? Et quand je tape find / -name '*test*' & , il est également visible sur le moniteur.

Pourquoi donc? N'est-ce pas vraiment en arrière-plan ?

Meilleure réponse

Le & ordonne au shell d'exécuter la commande en arrière-plan, c'est-à-dire qu'elle est dérivée et exécutée dans un sous-shell séparé, en tant que tâche, de manière asynchrone.

Notez que lorsque vous mettez & la sortie - à la fois stdout et stderr – sera toujours imprimé sur l'écran . Si vous ne voulez voir aucune sortie à l'écran, redirigez à la fois stdout et stderr à un fichier par :

myscript > ~/myscript.log 2>&1 &

Habituellement, vous voudrez peut-être supprimer le stderr en le redirigeant vers /dev/null si vous ne vous souciez pas d'analyser les erreurs plus tard.

Vous pouvez également exécuter des commandes/scripts en même temps, dans des sous-shells séparés. Par exemple ;

./script1 & ./script2 & ./script3 & 

Une tâche en arrière-plan peut être ramenée à la ligne de commande avant qu'elle ne se termine avec la commande :

fg <job-number>

Le job-number peut être obtenu en exécutant

jobs

Ubuntu
  1. Pourquoi le Pgid des processus enfants n'est-il pas le PID du parent ?

  2. Où vont les codes d'échappement Ansi lorsque je me dirige vers un autre processus ? Puis-je les garder ?

  3. Pourquoi le curseur saute-t-il lors de la frappe ?

  4. Comment puis-je voir la sortie dmesg à mesure qu'elle change?

  5. Pourquoi slabtop -o ne renvoie-t-il que les 23 premières lignes lorsque la commande est canalisée ?

Comment envoyer des processus en arrière-plan sous Linux

Exécutez des processus d'arrière-plan sous Linux à l'aide de la commande Screen

Pourquoi l'arrière-plan du bureau est-il noir après la mise à niveau vers 13.04 ?

Pourquoi Shotwell a-t-il inversé les positions X et Y lors de l'utilisation du recadrage ?

Comment puis-je voir l'activité de mon compte d'hébergement ?

Comment envoyer des processus en arrière-plan sous Linux