GeeksforGeeks (Français)

chaque commande sous Linux démarre un processus au moment de son exécution, qui se termine automatiquement à la sortie du terminal. Supposons que vous exécutiez des programmes sur SSH et si la connexion tombe, la session sera terminée, tous les processus exécutés s’arrêteront et vous risquez de faire face à une énorme crise accidentelle. Dans de tels cas, l’exécution de commandes en arrière-plan peut être très utile à l’utilisateur et c’est là que la commande nohup entre dans l’image., nohup (No Hang Up) est une commande dans les systèmes Linux qui exécute le processus même après la déconnexion du shell/terminal.

habituellement, chaque processus dans les systèmes Linux reçoit un SIGHUP (Signal raccrocher) qui est responsable de la fin du processus après la fermeture/sortie du terminal. La commande Nohup empêche le processus de recevoir ce signal lors de la fermeture ou de la sortie du terminal/shell. Une fois qu’une tâche est démarrée ou exécutée à l’aide de la commande nohup, stdin ne sera pas disponible pour l’utilisateur et nohup.le fichier out est utilisé comme fichier par défaut pour stdout et stderr., Si la sortie de la commande nohup est redirigée vers un autre fichier, nohup.fichier n’est pas généré.

Syntaxe:

nohup command 

Travailler avec nohup commande

1. Vérification de la version de Nohup:

La version de nohup commande peut être vérifié à l’aide de la commande suivante.

$ nohup --version

Résultat:

2. Pour exécuter une commande au premier plan:

exécute la commande au premier plan et redirige la sortie de la commande vers le nohup.out fichier si un nom de fichier de redirection n’est pas mentionné.,

$ nohup bash geekfile.sh

Résultat:

Pour rediriger la sortie vers la sortie.fichier txt:

$ nohup bash geekfile.sh > output.txt

Résultat:

3. Pour exécuter une commande en arrière-plan (avec ‘&’):

Pour exécuter la commande en arrière-plan, le ‘&’ symbole est ajouté à la fin de la commande. Après l’exécution, il ne revient pas à l’invite de commande shell après avoir exécuté la commande en arrière-plan. Il peut être ramené au premier plan avec la commande fg.,

$ nohup bash geekfile.sh &fg

sortie:

remarque: le nombre entre crochets représente l’ID du travail et le numéro à côté est l’id du processus.

4. Pour exécuter plusieurs commandes en arrière-plan:

nohup commande peut être utilisée pour exécuter plusieurs commandes en arrière-plan.

$ nohup bash -c 'commands'

Exemple:

$ nohup bash -c 'cal && ls'

Résultat:

Ici, la sortie sera par défaut stockés dans nohup.hors. De le rediriger, type:

$ nohup bash -c 'commands' > filename.txt

Exemple:

$ nohup bash -c 'cal && ls' > output.txt

Résultat:

l’Article Tags :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *