Commande nohup dans Linux

Commande nohup dans Linux

Tutoriel de commande bash nohup

Le sens de nohup est 'Pas de raccrochage'. Normalement, lorsque nous nous déconnectons du système, tous les programmes ou processus en cours d'exécution sont du raccrochage ou de la fin. Si vous souhaitez exécuter un programme après vous connecter ou quitter le système d'exploitation Linux, vous devez utiliser la commande noHup. Il existe de nombreux programmes qui nécessitent de nombreuses heures pour terminer. Nous n'avons pas besoin de nous connecter pendant de longues fois pour terminer la tâche de la commande. Nous pouvons garder ce type de programmes en arrière-plan en utilisant la commande noHup et vérifier la sortie plus tard. Un exemple d'utilisation de la commande nohup est la vérification de la mémoire, le redémarrage du serveur, la synchronisation etc. Comment vous pouvez utiliser un nohup La commande sur Ubuntu pour exécuter un programme en arrière-plan est affichée dans ce tutoriel.

Vous pouvez vérifier la version de la commande nohup en utilisant la commande suivante.

$ nohup --version

Syntaxe de commande nohup:

Vous pouvez utiliser la commande nohup de deux manières.

  1. NOHUP COMMAND [Args…]
  2. Option nohup

Utilisation de NoHup avec des commandes

Exemple-1: Utilisation de la commande nohup sans '&'

Lorsque vous exécutez la commande nohup sans '& ' puis il revient à l'invite de commande shell immédiatement après l'exécution de cette commande particulière en arrière-plan. Dans l'exemple suivant, nohup courir frapper Commande sans '&' pour exécuter Sleep1.Fichier Sh en arrière-plan. La sortie du nohup La commande écrira nohup.dehors Le fichier, le cas échéant, n'est pas mentionné dans nohup commande. Pour la commande suivante, vous pouvez vérifier la sortie de Sleep1.sh en vérifiant la sortie de nohup.dépose.

$ nohup bash sleep1.shot
$ Cat nohup.dehors

Vous pouvez exécuter la commande de la manière suivante pour rediriger la sortie vers le sortir.SMS déposer. Vérifier la sortie de sortir.SMS.

$ nohup bash sleep2.SH> Sortie.SMS
$ la production de chat.SMS

Exemple-2: Utilisation de la commande nohup avec '&'

Quand nohup Utilisation de la commande avec '& ' Ensuite, il ne revient pas à l'invite de commande shell après avoir exécuté la commande en arrière-plan. Mais si vous le souhaitez, vous pouvez revenir à l'invite de commande shell en tapant 'FG '

$ nohup bash sleep1.sh &
$ fg

Exemple-3: Utilisation de la commande nohup pour exécuter plusieurs commandes en arrière-plan

Vous pouvez exécuter plusieurs commandes en arrière-plan en utilisant la commande nohup. Dans la commande suivante, la commande MKDIR et LS est exécutée en arrière-plan en utilisant des commandes NoHup et Bash. Vous pouvez obtenir la sortie des commandes en vérifiant la sortie.fichier txt.

$ nohup bash -c 'mkdir mydir && ls'>.SMS
$ la production de chat.SMS

Exemple-4: Démarrez n'importe quel processus en arrière-plan en utilisant nohup

Lorsque tout processus démarre et que l'utilisateur ferme le terminal avant de terminer la tâche du processus en cours, le processus s'arrête normalement. Si le processus exécute avec noHup, il est capable d'exécuter le processus en arrière-plan sans aucun problème. Par exemple, si vous exécutez le ping-ping Commande normalement, alors il terminera le processus lorsque vous fermerez le terminal.

$ ping -i 10 google.com

Vous pouvez vérifier la liste de toutes les commandes en cours d'exécution en utilisant la commande pgrep. Fermer le terminal. Rouvrir le terminal et courir pgrep commander avec -un option. Aucune liste de commande en cours d'exécution ne s'affiche car toutes les commandes en cours d'exécution sont terminées lorsque le terminal a été fermé.

$ pgrep -a ping

Courir ping-ping commande avec la commande nohup. Rouvrir le terminal et courir pgrep recueillir à nouveau. Vous obtiendrez la liste du processus avec l'ID de processus qui s'exécute.

$ nohup ping -i 15 google.com &
$ pgrep -a ping

Vous pouvez arrêter n'importe quel processus d'arrière-plan en exécutant la commande kill. Exécutez simplement la commande kill avec un identifiant de processus particulier qui s'exécute. Ici, l'ID de processus du processus de course est 7015. Exécutez la commande Kill en 7015 pour terminer le processus.

$ tuer 7015

Les utilisations de la commande nohup sont expliquées en utilisant des exemples très simples dans ce tutoriel. J'espère que vous aurez une idée claire de la fonction de la commande nohup et que vous pourrez appliquer cette commande à diverses fins.