Année universitaire 2002-2003
espace

Licence d'informatique
Module 4 - partie "C / shell"



Travaux dirigés 13 :

  • 1. Les opérateurs && et || en shell.
  • 2. La commande exit.
  • 3. La commande test.
  • 4. La structure de contrôle de condition en shell.
  • 5. Les variables d'un shell.
  • 6. La commande set.
  • 7. La commande expr.
  • 8. Exercice 1 : premiers scripts.
  • 9. La commande read.
  • 10. La commande ps.
  • 11. La commande kill.
  • 12. Exercice 2 : script.

  • 1. Les opérateurs && et || en shell.

    Dans ce paragraphe, on appelle "liste de commandes" un ensemble de commandes situées sur une même ligne et séparées par des ; (exécution séquentielle) ou par des | (branchement).

    Remarque :

    2. La commande exit.

    Caractéristiques :

    Syntaxe :

    Description :

    Exemple :

    Codes de retour :

    Remarques :

    3. La commande test.

    Caractéristiques :

    Syntaxes et description :

    Exemples :

    Codes de retour :

    4. La structure de contrôle de condition en shell.

    Dans un script, il est possible de structurer les commandes en effectuant des appels conditionnels.

    Syntaxe :

    Remarques :

    Exemple :


    contenu.sh

    if [ $# -eq 1 ]
    then
    echo "Le répertoire $1 a le contenu suivant : `ls $1`"
    else
    echo 'Mauvais nombre de paramètres'
    fi

    5. Les variables d'un shell.

    Tout shell permet de gérer des variables. Le nom d'une variable peut comporter des lettres, des chiffres et le caractère _ mais le premier caractère ne peut pas être un chiffre. La valeur d'une variable s'obtient en faisant précéder le nom de la variable du caractère $. Une variable d'un shell ne peut avoir comme valeur qu'une chaîne de caractères. Avec le shell de Bourne, l'affectation d'une valeur à une variable s'effectue soit à l'aide de la commande read, soit en utilisant la syntaxe suivante :

    expression est une "expression" du shell ayant comme valeur une chaîne de caractères.

    Attention :

    En shell, "l'expression" la plus générale est obtenue par la "concaténation" d'une ou de plusieurs expressions, qui peuvent être :

    La concaténation d'expressions s'écrit en juxtaposant ces expressions et en utilisant, si besoin est, les délimiteurs " et ', sachant que cela a une influence sur l'interprétation des métacaractères du shell.

    Exemples :

    Remarques :

    6. La commande set.

    Caractéristiques :

    Syntaxe :

    Description :

    Exemples :

    Codes de retour :

    Remarque :

    7. La commande expr.

    Caractéristiques :

    Syntaxe :

    Description :

    Exemples :

    Codes de retour :

    Remarques :

    8. Exercice 1.

    1) À l'aide d'une seule ligne de commande, afficher le message OK si un fichier est un "binaire exécutable".

    Remarque :

    2) Même question, en écrivant un script mettant en oeuvre une structure de contrôle de condition.

    9. La commande read.

    Caractéristiques :

    Syntaxe :

    Description :

    Exemples :

    Codes de retour :

    Remarque :

    10. La commande ps.

    Caractéristiques :

    Syntaxe :

    Description :

    Exemples :

    Codes de retour :

    11. La commande kill.

    Caractéristiques :

    Syntaxes :

    Description :

    Exemple :

    Codes de retour :

    12. Exercice 2.

    Écrire un script permettant de compter les fichiers du répertoire courant (les sous-répertoires du répertoire courant ne doivent donc pas être comptés) correspondant à l'une des quatre catégories suivantes :


    Ces pages ont été réalisées par A. Crouzil, J.D. Durou et Ph. Joly.
    Pour tout commentaire, envoyer un mail à crouzil@irit.fr, à durou@irit.fr ou à Philippe.Joly@irit.fr.