Vous êtes sur la page 1sur 5

Ecole Marocaine des Sciences de l’Ingénieur

Nom : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 / 06 / 2021

Prénom : . . . . . . . . . . . . . . . . . Groupe : . . . . . . . . . . . . .

3ème année IIR Mme OUAZZANI


Système d’exploitation Unix 10h45 – 12h15
Documents non autorisés

Bonus : Assiduité, sérieux et travail en classe

----------------- + 0 ----------------- + 1 ----------------- + 2 -----------------

Exercice 1
Avec les fichiers suivants dans le répertoire courant :
Posix ultrix Unix Onyx unix
Quels sont les fichiers qui seront affichés par la commande :
$ ls ??ix
.........................................................................
Et, quels sont les fichiers qui seront supprimés par la commande :
$ rm u*x
.........................................................................

Exercice 2
Avec les fichiers suivants dans le répertoire courant :
Doc1 F1.48 version1.0 F4.F5
Text14 unix1-UNIX4 4.4 FF.10
Les contenus de quels fichiers seront affichés par la commande suivante :
$ cat *[1-5].*[048]
.........................................................................
.........................................................................

1
Exercice 3
Soient les 2 lignes de commandes suivantes :
$ X=unix ; Y=linux
$ echo La valeur de X est $X, la valeur de Y est Y, et la valeur de Z est $Z
Quel serait le résultat affiché après l’exécution de ces 2 lignes de commandes ?
.........................................................................

Exercice 4
Soient les commandes suivantes :
$ # Le login shell
$ cours=unix ; tp=java
$ export tp
$ echo cours=$cours , tp=$tp , projet=$projet # (1)
$ sh
$ # Le sous shell fils
$ echo cours=$cours , tp=$tp , projet=$projet # (2)
$ projet=SQL ; cours=BDD
$ export projet
$ sh
$ # Le sous shell petit fils
$ echo cours=$cours , tp=$tp , projet=$projet # (3)

Que va afficher chacun des 3 « echo » : ( 1 ) , ( 2 ) et ( 3 )


(1) ....................................................................
(2) ....................................................................
(3) ....................................................................

Exercice 5
Soit le shell script SS1 suivant :
# shell script SS1
Quels résultats seraient affichées par la commande suivante ?
Shift ; shift
$ ./SS1 unix java sql uml
echo $# , $*
................................................
echo $0 , $3
................................................

2
Exercice 6
Ecrire le shell script « ficrep » qui permet de compter et d’afficher le nombre de fichiers
et le nombre de répertoires dans le répertoire passé en paramètre.
Les contrôles à faire :
✓ Un seul paramètre obligatoire.
✓ Le paramètre doit être de type répertoire.
.........................................................................
.........................................................................
.........................................................................
.........................................................................
.........................................................................
.........................................................................
.........................................................................
.........................................................................
.........................................................................
.........................................................................
.........................................................................
.........................................................................
.........................................................................
.........................................................................

Exercice 7 # Shell script SS2


Soit le shell script paramétré SS2 suivant : X=$*
En exécutant le shell SS2 par la commande suivante : Y=10 20 30
$ ./SS2 unix java poo uml sql echo $# , $1
............................................. set ` echo $Y `
............................................. echo $# , $1
............................................. set ` echo $X `
echo $# , $1

3
Exercice 8
Soit le shell script paramétré SS3 suivant :
Après l’exécution de la commande suivante : # Shell script SS3
$ ./SS3 unix java uml sql echo ’ param1=$1 ! ’
Quel serait le résultat affiché : echo ’’ param2=$2 ! ’’
......................................... echo l’un des paramètres est $3
......................................... !
.........................................

Exercice 9
Soit le shell script « exam » qui a comme paramètres un nombre quelconque de noms de
fichiers simples, et qui permet de changer les droits d’accès de chacun des fichiers en
paramètre de la manière suivante :
✓ Si le fichier n’est pas exécutable, le rendre exécutable pour l’utilisateur seulement.
✓ S’il est déjà exécutable, le rendre exécutable aussi pour le groupe et les autres.
.........................................................................
.........................................................................
........................................................................
.........................................................................
.........................................................................
........................................................................
.........................................................................
.........................................................................
........................................................................
.........................................................................
.........................................................................
........................................................................

4
Exercice 10
Soit le shell script SS4 suivant :

# Shell script SS4


case $# in
6) grep -q $1 $2 && grep -q $3 $4 && grep -q $5 $6
Case $? in
0) echo Succès ;;
1) echo Echec ;;
esac ;;
*) echo erreur , ce shell a besoin de 6 paramètres \! ;;
esac

Le shell script SS4 doit avoir 6 paramètres.


De quel type est chacun des paramètres de ce shell.
S1 : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $2 : . . . . . . . . . . . . . . . . . . . . . . . . . . .
S3 : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $4 : . . . . . . . . . . . . . . . . . . . . . . . . . . .
S5 : . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . $6 : . . . . . . . . . . . . . . . . . . . . . . . . . . .

Dans quel cas le shell script SS4 affichera le résultat « Succès » ?


........................................................................
........................................................................
........................................................................

Vous aimerez peut-être aussi