Qu'est-ce qu'un travail sous Linux
Un travail est un processus géré par le shell. Chaque travail se voit attribuer un ID de travail séquentiel. Parce qu'un travail est un processus, chaque travail a un PID associé. Il existe trois types de statuts de tâche :
1. Premier plan :Lorsque vous entrez une commande dans une fenêtre de terminal, la commande occupe cette fenêtre de terminal jusqu'à ce qu'elle se termine. Il s'agit d'un travail de premier plan.
2. Contexte :lorsque vous saisissez une esperluette (&) à la fin d'une ligne de commande, la commande s'exécute sans occuper la fenêtre du terminal. L'invite du shell s'affiche immédiatement après que vous avez appuyé sur Retour. Ceci est un exemple de tâche en arrière-plan.
3. Arrêté :Si vous appuyez sur Ctrl + Z pour une tâche de premier plan ou entrez la commande d'arrêt pour une tâche d'arrière-plan, la tâche s'arrête. Ce travail est appelé un travail arrêté.
Commandes de contrôle des travaux
Les commandes de contrôle des travaux vous permettent de placer des travaux au premier plan ou en arrière-plan, et de démarrer ou d'arrêter des travaux. Le tableau décrit les commandes de contrôle des tâches.
Option | Description |
---|---|
emplois | Répertorie toutes les tâches |
bg %n | Place la tâche actuelle ou spécifiée en arrière-plan, où n est l'ID de la tâche |
fg %n | Amène le travail actuel ou spécifié au premier plan, où n est l'ID du travail |
Contrôle-Z | Arrête la tâche de premier plan et la place en arrière-plan en tant que tâche arrêtée |
Exécuter une tâche en arrière-plan
Pour exécuter une tâche en arrière-plan, vous devez saisir la commande que vous souhaitez exécuter, suivie d'une esperluette (&) symbole à la fin de la ligne de commande. Par exemple, exécutez la commande sleep en arrière-plan.
$ sleep 100 & [1] 1302 $
Le shell renvoie l'ID de tâche, entre parenthèses, qu'il attribue à la commande et le PID associé. Avec l'ID de tâche, vous pouvez utiliser les commandes de contrôle de tâche pour gérer la tâche tandis que le noyau utilise des PID pour gérer les tâches.
Lorsqu'une tâche en arrière-plan est terminée et que vous appuyez sur Entrée, le shell affiche un message indiquant que la tâche est terminée.
[1] + Done sleep 100 & $
Gestion des tâches en arrière-plan
Vous pouvez utiliser les emplois pour répertorier les tâches en cours d'exécution ou suspendues en arrière-plan.
$ jobs [1]+ Running sleep 100 &
Vous pouvez utiliser la commande fg pour mettre une tâche en arrière-plan au premier plan.
$ fg % 1 sleep 100Remarque :la tâche de premier plan occupe le shell jusqu'à ce qu'elle soit terminée, suspendue ou arrêtée et placée en arrière-plan.
Vous pouvez utiliser le 'Contrôle + Z clés et bg commande pour remettre une tâche en arrière-plan. Les touches Control+Z suspendent le travail et le placent en arrière-plan en tant que travail arrêté. La commande bg exécute le travail en arrière-plan. Par exemple :
1. Utilisation de CTRL+Z
$ sleep 100 ^Z [1]+ Stopped sleep 100
$ jobs [1]+ Stopped sleep 100
$ bg % 1 [1]+ sleep 100 &
$ jobs [1]+ Running sleep 100 &Remarque :Lorsque vous placez une tâche arrêtée au premier plan ou en arrière-plan, la tâche redémarre.