Introduction aux jobs linux
“Les jobs” sont une fonctionnalité disponible sur linux permettant d’avoir plusieurs processus ouverts dans un même terminal. Nous allons voir comment faire cela à travers un exemple:
Lorsque nous tapons la commande ls
dans le terminal, le processus du shell sur lequel nous tapons nos commandes va s’endormir, et va laisser place au processus ls
écrire dans le terminal. Une fois que le processus ls
a fini de s’exécuter, il va prévenir le shell afin qu’il puisse reprendre le contrôle du terminal.
Mettre un programme en arrière plan
Prenons un terminal avec vi
(un éditeur de texte) ouvert. Nous pouvons faire le raccourci CTRL + z pour le mettre en pause.
Affichage après un CTRL + z:
Ici, vi est mis en pause en arrière-plan.
Remettre un job au premier plan
Pour pouvoir remettre vi au premier plan, il suffit de faire la commande:
Tada, nous pouvons retrouver vi !
La liste des jobs est donnée grâce à cette commande:
Voici ce que peut donner cette commande:
Dans cet exemple, nous avons 3 jobs.
L’esperluette (”&”)
L’esperluette, ou ”&”, peut être utilisée afin de garder un processus ouvert même en arrière-plan.
Par exemple:
Ici, notre programme “sh” et “sleep” tournent en même temps. (Ils ne sont pas en sommeil).
En tapant la commande jobs
, voici ce que l’on peut voir:
Stopper un processus
Ici, le processus sleep décompte. Nous pouvons le terminer avec la commande:
“%4” indique que nous voulons terminer le quatrième job. (linux remplace le numéro du job par le numéro du processus).
Voici ce que nous avons:
Relancer un processus
Si nous voulons relancer en tâche de fond “sleep”, nous avons la commande “bg”:
Et voilà le résulat:
Tuer complètement un processus
Nous pouvons bien sûr tuer complètement le processus “sleep” avec:
Et le résultat:
Quelques raccourcis
Nous remarquons aussi un ”+” et un ”-” devant les numéros. Le ”+” indique que le job 3 est le dernier processus ouvert. Le ”-” indique que le job 2 est l’avant-dernier processus ouvert.
Par exemple, si nous voulons appliquer la commande “bg” sur le dernier job (avec un +), nous avons 3 solutions:
Laisser un processus vivant même après la fermeture du terminal
La commande “disown” permet de laisser un processus ouvert même après la fermeture du terminal (donc aucun terminal ne sera propriétaire du processus)
Exemple:
Et voilà, c’est la fin de cette introduction. Nous avons vu que linux gère très bien le fait de mettre des processus en arrière-plan sans pour autant les couper. Maintenant, vous ne serez plus obligé de couper un processus pour copier / coller une information dans votre terminal !
Simplifiez les conditions avec les opérateurs logiques et opérateurs ternaires
Découvrez une nouvelle manière de simplifier votre code
Écrivez plus vite en HTML avec Emmet
Ne vous embêtez plus avec les balises !
Introduction à Vim
Devenez un super développeur grâce à Vim !
Supprimez les messages de connexion SSH au démarrage de session
Ne soyez plus embêté lorsque vous vous connectez sur vos machines