Previous Contents

5   Manipulation de processus

Le but de l'exercice est de se familiariser avec les commandes de manipulation des processus Unix. Ces commandes sont les suivantes : Vous vous servirez aussi de la commande grep <pattern> <file> qui affiche les lignes du fichier <file> contenant la chaîne de caractères <pattern>.

Faites les manipulations suivantes :
  1. Créez un fichier contenant le script suivant :
    #!/bin/sh
    while true
    do
     sleep 10
     echo $0 est toujours la !!
    done
    
    lancez ce script en arrière-plan (utilisez &).
  2. Repérez son PID (process id) avec la commande ps. A l'aide de grep arrangez vous pour ne lister que ce processus.
  3. Tuez le processus.
  4. Modifiez le script pour qu'il devienne :
    #!/bin/sh
    trap "echo Je ne m'arreterais pas !!" 2
    while true
    do
     sleep 10
     echo $0 est toujours la !!
    done
    
    Lancez ce script normalement. Tentez d'arreter l'exécution par un CTRL-C (enfoncez les touches Control et C simultanément).
    En fait la commande trap permet de détourner les signaux. Comme le signal 2 (DEL) est le signal demandant l'arrêt d'un programme, la combinaison de touches CTRL-C est désactivée.
  5. Lancez le script en arrière-plan. Envoyez le signal 2 (DEL) au processus que vous venez de créer. Détruisez le processus.

Previous Contents