Commande Linux bg

Linux 命令大全Référence des commandes Linux

bgest l'une des commandes principales pour le contrôle des tâches dans les systèmes Linux/Unix, avec le nom complet "background". Sa fonction principale est de déplacer les tâches actuellement suspendues en arrière-plan pour qu'elles continuent de s'exécuter.

Concepts de base

  • Tâche au premier plan: un processus qui s'exécute dans le terminal et occupe les entrées/sorties
  • Tâche en arrière-plan: un processus qui s'exécute en arrière-plan du terminal sans occuper les entrées/sorties
  • Contrôle des tâches: la capacité de gérer les processus au premier plan et en arrière-plan

Syntaxe de commande

bg [作业号]

Description du paramètre

Paramètre Description
Aucun paramètre Agit sur la tâche actuelle (c.-à-d. la tâche la plus récemment suspendue)
Numéro de tâche Spécifiez le numéro de tâche sur lequel agir (peut être consulté via lajobscommande)

Scénarios d'utilisation

1. Reprendre les tâches suspendues

Lorsque vous utilisezCtrl+Zpour mettre en pause une tâche au premier plan, vous pouvez utiliser labgcommande pour la faire continuer à s'exécuter en arrière-plan :

Exemple

$ sleep 100  # Démarrer une commande de longue durée
^Z           # Appuyez sur Ctrl+Z pour suspendre
[1]+ Arrêté        sleep 100
$ bg         # Laissez-le continuer à s'exécuter en arrière-plan
[1]+ sleep 100 &

2. Reprendre en spécifiant le numéro de tâche

Lorsqu'il y a plusieurs tâches suspendues, vous pouvez spécifier un numéro de tâche :

Exemple

$ jobs
[1]- Arrêté        vim file1.txt
[2]+ Arrêté python script.py
$ bg 2  # Laissez la deuxième tâche continuer à s'exécuter en arrière-plan

3. Utilisation avec la commande fg

bgetfg(avant-plan) est une paire de commandes complémentaires :

  • bg: Mettre la tâche en arrière-plan pour qu'elle s'exécute
  • fg: Ramener la tâche au premier plan pour l'exécuter

Exemples d'applications pratiques

Scénario : Flux de travail typique en développement

Exemple

# 1. Démarrer l'éditeur
$ vim app.py

# 2. Besoin d'exécuter temporairement les tests (Appuyez sur Ctrl+Z pour mettre vim en pause)
^Z
[1]+ Arrêté        vim app.py

# 3. Exécuter le script de test
$ python test.py

# 4. Une fois le test terminé, laissez l'éditeur revenir en arrière-plan pour continuer à travailler
$ bg 1
[1]+ vim app.py &

# 5. Afficher les tâches en arrière-plan
$ jobs
[1]+ En cours d'exécution        vim app.py &

FAQ

Q1 : Comment vérifier quelles tâches sont actuellement en cours d'exécution ?

Utilisez lajobscommande :

Exemple

$ jobs
[1]- En cours        sleep 100 &
[2]+ Arrêté        vim notes.txt

Q2 : Quelle est la différence entre bg et & ?

  • &: Mettre directement en arrière-plan lorsque la commande démarre
  • bg: Mettre en arrière-plan les tâches déjà suspendues

Q3 : Que se passe-t-il avec les tâches bg après la fermeture du terminal ?

Par défaut, les tâches en arrière-plan seront terminées lorsque le terminal est fermé. Pour les conserver, vous pouvez utiliser :

Exemple

nohup command &  # Ou utiliser tmux/screen

Astuces avancées

1. Utiliser avec disown

Détacher la tâche du terminal pour qu'elle ne soit pas terminée même si le terminal est fermé :

Exemple

$ sleep 1000
^Z
$ bg
$ disown %1

2. Utiliser les raccourcis de numéro de tâche

  • %n: Numéro de tâche n
  • %str: Tâche commençant par str
  • %?str: Tâche contenant str

Exemple

$ bg %sleep  # Reprendre la tâche contenant "sleep"

Organigramme récapitulatif

Maîtriser labgcommande peut considérablement améliorer votre efficacité au travail sous Linux, surtout lorsque vous devez gérer plusieurs tâches simultanément. En la combinant avecjobs、fgetkillet d'autres commandes, vous pouvez obtenir de puissantes capacités de contrôle des tâches.

Linux 命令大全Référence des commandes Linux

Autres extensions