Vous êtes sur la page 1sur 7

Pratiques Linux

EquipePédagogique : Khaoula AMMAR, Dhouha KRICHEN, Ilhem


GHARBI, Faten BEN ABDALLAH

Réalisé par: Najeh Touil


Classe: Indp1_c

Partie 1 :
A)
Répondez aux questions suivantes en utilisant à chaque fois une ligne de commande shell.
1. Faites une copie de fichier /etc/passwd dans votre répertoire personnel sous le nom
users.txt.

2. Afficher le fichier users.txt trié par ordre alphabétique de noms.

4. Afficher le nombre de personnes dans le fichier users.txt

5. Afficher toutes les lignes contenant l’expression “user”.


6. Afficher toutes les lignes ne contenant pas l’expression “user”.

7. Afficher le UID de la première expression “user” apparaissant dans le fichier users.txt

8. En utilisant le fichier users.txt, donner les instructions nécessaires pour changer le


séparateur ‘ :’ par le séparateur ‘-‘. Les champs qui suivent le GID seront enlevés et les
lettres minuscules seront remplacées par des lettres majuscules.

9. Rediriger le résultat vers un nouveau fichier test.txt.

10. Afficher le nombre des utilisateurs connectés.


B)
1/ Triez le fichier contenant les comptes utilisateurs ‘sous centos’ alphabétiquement suivant
le nom de chaque utilisateur.

2/ Triez le dernier fichier numériquement suivant l’UID de chaque utilisateur.

3/ Trier le même fichier sur le deuxième caractère de son troisième champ.

Partie 2 :
A)
On souhaite écrire un script remplace.shqui reçoit en paramètres deux noms de fichiers
(fich1etfich2) et une liste de répertoires.
1. Le fichierfich1 doit être un fichier du répertoire courant.
2. Après l'exécution du script, tout fichierfich2se trouvant dans un des répertoires passés en
paramètres doit avoir son contenu remplacé par celui defich1.
Ecrivez le scriptremplace.sh.
B)
On souhaite écrire un script concat.sh qui reçoit en paramètres deux noms defichiers (f1, et
f2).
1. Concaténer puis trier les deux fichiers f1 et f2 dans le nouveau fichier f3.
2. Ajouter à la fin de fichier f3 l’heure au format hh:mm
3. Ajouter également à la fin de f3 une autre ligne qui compte le nombre de fichiers et
répertoires dans le répertoire courant.
Ecrivez le script concat.sh.

Partie 3 :
A)
1/ Lancer la commande ‘sleep’ avec une durée de 2000 secondes en arrière-plan.

2/ on fait comment pour visualiser les différents processus en cours ?

3/Suspendre le processus ‘sleep’ précédent et vérifier son état.

4/Relancer maintenant le processus ‘sleep’ et vérifier son état.

5/ en utilisant le PIPE, quel est le PID du processus sleep précédent ?

7/ Tuer le processus ‘sleep’.

B)
1.      Ouvrir une fenêtre et taper la commande suivante : 
# vmstat 1

Quelle est l’intérêt de cette commande ?


La commande vmstat 1 permet d’avoir une idée sur la performance de la mémoire
virtuelle, du CPU (état des processus…) et ce en faisant une mise à jour chaque seconde
(1 seconde).
3. Suspendre les statistiques avec < CTRL+Z>.

Quelle est votre interprétation ?


Lorsqu’on tape sur <CTRL+Z> le processus s’arrête et un message apparait
4. Vérifier l’état de ce processus et comparer la sortie à celle de lacommande pssans
argument.
Le processus est bien suspendu
En utilisant ps sans argument, le processus vmstat 1 est encore présent ce qui montre que
le processus est encore parmi les processus vivants. Il est Stoppé mais il est encore vivant
5. Relancer en arrière-plan et vérifier l’état de ce processus.
6. Stopper de nouveau le job relatif aux statistiques.   

7. Relancer le processus directement en arrière-plan.


On utilise la commande « vmstat 1 & » 

8. Tuer ce processus depuis un autre terminal où la commande jobs ne voit pas le processus
en question.
D’abord on cherche le PID de processus avec ps dans l’autre terminal

Puis on exécute la commande kill