Si vous avez une tâche longue durée, il n’est pas toujours sage d’attendre qu’elle se termine. Je veux dire, pourquoi garder le terminal occupé pour une commande particulière? Sous Linux, vous pouvez envoyer une commande ou un processus en arrière-plan afin que la commande soit en cours d’exécution, mais le terminal sera libre pour vous d’exécuter d’autres commandes.
Dans ce tutoriel, je vais vous montrer quelques façons d’envoyer un processus en arrière-plan. Je vais également vous montrer comment ramener les processus d’arrière-plan au premier plan.,
démarrer directement un processus Linux en arrière-plan
Si vous savez que la commande ou le processus va prendre beaucoup de temps, il serait préférable de démarrer la commande en arrière-plan elle-même.
pour exécuter une commande Linux en arrière-plan, il vous suffit d’ajouter ampersand (&) à la fin de la commande, comme ceci:
your_command &
prenons une simple commande bash sleep et envoyons-la en arrière-plan.
sleep 60 &
lorsque la commande se termine en arrière-plan, vous devriez voir des informations à ce sujet sur le terminal.,
+ Done sleep 60
envoyez un processus Linux en cours d’exécution en arrière-plan
Si vous avez déjà exécuté un programme et que vous avez réalisé que vous auriez dû l’exécuter en arrière-plan, ne vous inquiétez pas. Vous pouvez également envoyer un processus en cours d’exécution en arrière-plan.
ce que vous devez faire ici est D’utiliser Ctrl+Z pour suspendre le processus en cours d’exécution, puis d’utiliser ‘bg‘ (abréviation de background) pour envoyer le processus en arrière-plan. Le processus suspendu s’exécute maintenant en arrière-plan.
running_command^zbg
prenons le même exemple que précédemment.,
abhishek@linuxhandbook:~$ sleep 60^Z+ Stopped sleep 60abhishek@linuxhandbook:~$ bg+ sleep 60 &
voir tous les processus s’exécutant en arrière-plan
maintenant que vous savez comment envoyer les processus en arrière-plan, vous pourriez être intéressé de savoir quelles commandes s’exécutent en arrière-plan.
A cet effet, vous pouvez entrer cette commande dans le terminal:
jobs
mettons d’abord quelques commandes en arrière-plan.
firefox &gedit &vim &
Maintenant, les emplois de commande vous montrera tous les travaux en cours d’exécution/processus/commandes en arrière-plan comme ceci:
jobs Running firefox &- Running gedit &+ Stopped vim
avez-vous remarqué le nombre , et etc?, Ce sont les id de tâche. Vous remarquerez également le signe – et + sur deux des commandes. Le signe + indique le dernier travail que vous avez exécuté ou mis au premier plan. Le signe-indique l’avant-dernier travail que vous avez exécuté ou mis au premier plan.
mettre un processus au premier plan sous Linux
très bien! Vous avez donc appris à exécuter des commandes en arrière-plan sous Linux. Mais qu’en est-il de ramener un processus en cours d’exécution en arrière-plan au premier plan?
pour envoyer la commande en arrière-plan, vous avez utilisé ‘bg’. Pour ramener le processus d’arrière-plan, utilisez la commande ‘fg’.,
fg
maintenant, si vous utilisez simplement fg, cela amènera le dernier processus de la file d’attente de travail d’arrière-plan au premier plan. Dans notre exemple précédent, l’exécution de ‘ fg ‘ ramènera l’éditeur Vim au terminal.
Si vous voulez apporter un certain processus au premier plan, vous devez spécifier son id de tâche. L’ID de travail est le numéro que vous voyez au début de chaque ligne dans la sortie de la commande ‘jobs’.
fg n
où n est l’ID du travail tel qu’affiché dans la sortie de la commande jobs.,
C’est tout
c’était rapide mais suffisant pour que vous puissiez apprendre quelques choses sur l’exécution de commandes en arrière-plan sous Linux. Je conseillerais également d’apprendre la commande nohup. Cette commande permet d’exécuter des commandes en arrière-plan, même après la déconnexion de la session.
Laisser un commentaire