0% ont trouvé ce document utile (0 vote)
24 vues5 pages

Cours Unix pour étudiants ingénieurs

Transféré par

pabiw53230
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
24 vues5 pages

Cours Unix pour étudiants ingénieurs

Transféré par

pabiw53230
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Université du Littoral Côte d’Opale

Ecole d’Ingénieurs du Littoral Côte d’Opale


ING1: Système d'exploitation
TD

Exercice A : (les questions du présent exercice sont à réaliser en mode commande, sans utiliser un
éditeur de texte)

[A.1.] ​ En utilisant la commande date afficher sur la même ligne l’expression

Rep A.1.] echo -n "Nous sommes le " ; date

[A.2.] ​ Sauvegarder dans un nouveau fichier fich1 créé en mode commande (sans
éditeur de texte) la ligne permettant l’affichage précédent.

Rep A.2.] echo -n "Nous sommes le " ; date > fich1

[A.3.] ​ Afficher le calendrier du mois courant.

Rep A.3.] cal 11 2020

[A.4.] ​ Rajouter au contenu de fich1 la commande réalisant l’affichage précédent.

Rep A.4.] cal 11 2020 >> fich1

[A.5.] ​ Afficher la valeur du répertoire courant en la précédant de ‘Répertoire courant ‘

Rep A.5.] echo " Le répertoire courant : " ; pwd

[A.6.] ​ Rajouter au contenu de fich1 la commande permettant l’affichage précédent.

Rep A.6.] echo " Le répertoire courant : `pwd ` " >> fich1

1
[A.7.] ​ Rendre fich1 exécutable pour tous (-a pour all)

Rep A.7.] chmod a+x fich1

[A.8.] ​ Exécuter fich1 moyennant /bin/bash fich1 et sauvegarder le résultat de


l’exécution dans un fichier fich1_Exec

Rep A.8.] Dans l’environnment (virtual box, Debian) bash fich1 > fich1_Exec

[A.9.] ​ Créer un répertoire dénommé TD2 et y déplacer par une commande les 2
fichiers fich1 et fich1_Exec

Rep A.9.] mkdir TD2 ; mv fich1 TD2/. ; mv fich1_Exec TD2/.

[A.10.] ​ Générer sous TD2 un fichier Fich1_Text_et_Exec un fichier dont le


contenu comprend le contenu de fich1 suivi de celui de fich1_Exec

Rep A.10.] cd TD2 ; cat fich1 fich1_Exec > Fich1_Text_et_Exec

[A.11.] ​ En utilisant la commande grep toutes les lignes de Fich1_Text_et_Exec


commençant par echo, chaque ligne est précédée de son numéro.

Rep A.11.] grep -n echo Fich1_Text_et_Exec

[A.12.] ​ Sauvegarder les lignes de Fich1_Text_et_Exec ne comprenant pas le mot


echo dans un fichier dénommé fich_sans_echo, chaque ligne étant précédée de son
numéro.
Rep A.12.] grep -v echo Fich1_Text_et_Exec > fich_sans_echo

Exercice B

[B.1.] ​ Quel effet aura la commande chmod 744 fich1 sur le fichier fich1 ?

2
Rep B.1.] les droits d’accès à fich1 deviennent : 7 4+2+1 ou rwx pour user
4 4+0+0 ou r - - pour le groupe
4 4+0+0 ou r - - pour les autres

[B.2.] ​ Après avoir créé un répertoire Dtmp, laquelle des commandes ci-dessous ne
pourra pas fonctionner, pourquoi ?

[1] ​ cp ​ fich1​ Dtmp/fich2


[2] ​ cp ​ Dtmp/fich2 ​ fich3
[3] ​ mv ​ fich2​ ​ Dtmp/fich3
[4] ​ cat​ fich3 ​fich1 > fich2
[5] ​ cat ​ Dtmp/fich2 > Dtmp/fich4
[6] ​ cat ​ Dtmp/ fich3 ​ >> fich4

Rep B.2.] Au départ seul le fichier fich1 existe sur le répertoire courant :
[3] ne peut pas fonctionner car fich2 n’existe pas dans le répertoire courant
(ascendant de Dtmp).
[6] fich3 n’existant pas sous Dtmp la commande de la ligne 6 ne peut pas
fonctionner.
[B.3.] ​ Une fois la commande erronée est identifée comparez les effets des autres
commandes
Rep B.3.]
[1] répertoire courant qui contient fich1 une copie de fich1 dénommé fich2 est créé sur
Dtmp
[2] une copie de fich2 de Dtmp est transféré dans un fichier fich3 du répertoire courant
[3] commande erronée
[4] un fichier fich2 est créé dans le répertoire courant et cumul le contenu de fich1 et
celui fich3
[5] un fichier fich4 est créé sous Dtmp comme copie de fich2 du même répertoire.
[B.4.] ​ Sans consulter les contenus des fichiers cités dans la question précédente, lister
les noms des fichiers (existants) par ordre croissant du nombre des lignes par fichier.

3
Justifier votre classement :

Rep B.4.] fich2 du répertoire courant est le plus grand en taille 2 fois des autres
fichiers ayant un même contenu

[B.5.] ​ Utiliser wc -l <nom_du_fichier> une seule fois pour en déduire le nombre des
lignes par fichier.

Rep B.5.] wc -l fich1 donne le nombre des lignes de fich1 qui sera identique
dans les autres fichiers sauf fich2 du répertoire courant qui a 2 fois le nombre des
lignes de fich1

[B.6.] ​ Cumuler le contenu de l’ensemble des fichiers distincts créés dans un fichier fich5
moyennant une commande. Afficher le nombre des lignes de fich5 moyennant la

commande wc . Justifier le nombre obtenu par wc.

Rep B.6.] cat fich1 fich2 fich3 > fich5 ; cat Dtmp/fich2 Dtmp/fich4 >>
fich5

fich5 contenant 6 copies de fich1 il aura un nombre des lignes 6 le


nombre des lignes de fich1

[B.7.] ​ Afficher les 5 premières lignes de Dtmp/fich2 (avec head)


Rep B.7.] head -5 Dtmp/fich2

[B.8.] ​ Afficher les 7 dernières lignes de Dtmp/fich2 (avec tail)


Rep B.8.] tail +n 7 Dtmp/fich2
[B.9.] ​ Re-exécuter les deux commandes utilisées lors des 2 questions précédentes pour
en créer un fichier fich24 sous Dtmp. Afficher d’abord le nombre des mots, puis le
nombre des caractères composants fich24.

Rep B.9.]

head -5 Dtmp/fich2 > fich24


tail +n 7 Dtmp/fich24 >> fich24 ;
wc -c fich24

4
[B.10.] ​ Créer un répertoire Essai et y loger des copies des fichiers fich1, fich3 et
fich4. Procéder à titre d’essai de supprimer Essai. Que se passe-t-il ? Décrire ce qu’il
faut faire en cas de besoin de suppression du répertoire Essai. Tester.

Rep B.10.] le répertoire Essai ne peut pas être supprimé qu’une fois tous les
fichiers qui y sont rattachés ont d’abord été supprimés

Vous aimerez peut-être aussi