Vous êtes sur la page 1sur 9

Sries de TPs N : ( 1 & 2 &3)

Exercice 1:
1- mkdir TP1
2- cd TP1
3- pwd
4- passwd
5- exit ou bien CTRL+D
6- date --date="01/09/1988"
Sat Jan 9 00:00:00 WET 1988

Exercice 2:
1- ls -ls /
2- Que se passe-t-il si vous essayez, partir du rpertoire racine, de remonter au niveau hirarchique suprieur avec la
commande suivante : @ubuntu:/$ cd .. Il ne se passe rien, a ne se considre pas comme erreur.
3- Apres chaque connexion on se retrouve dans le rpertoire de travail ~, le chemin daccs de ce rpertoire est :
pwd
/home/<nom user>
4- L'option -a affiche tous les fichiers des rpertoires, y compris les fichiers commenant par un '.' ls -al
Et l'option -d affiche les rpertoires avec la mme prsentation que les fichiers, sans lister leur contenu ls -dl

Exercice 3:
1- Pour crer larborescence suivante

On tape les commandes suivantes :


@ubuntu:~$ mkdir rep1
@ubuntu:~$ cd rep1
@ubuntu:~/rep1$ mkdir rep2 rep3
@ubuntu:~/rep1$ cd rep2
@ubuntu:~/rep1/rep2$ mkdir rep21 rep22
@ubuntu:~/rep1/rep2$ cd ..
@ubuntu:~/rep1$ cd rep3

@ubuntu:~/rep1/rep3$ mkdir rep31 rep32


2- Crer deux fichiers vides appels fich1 et fich2 dans le rpertoire courant : @ubuntu:~$ touch fich1 fich2
3- Copier le fichier fich1 dans le sous-rpertoire rep1, en lui donnant un nom fich3 : cp fich1 rep1/fich3
4- Renommer le fichier fich3 du rpertoire rep1 en fich4 : @ubuntu:~/rep1$ mv fich3 fich4
5- Crer une rfrence supplmentaire (link) sur ce fichier fich4 : @ubuntu:~/rep1$ ln fich4 rep3/fich5
6- Copier, par le nom relatif, le fichier fich4 dans votre rpertoire courant : @ubuntu:~/rep1$ ln -s fich4 ../fich4

Sries de TPs N : ( 4 & 5 &7 &8)


Exercice 1:
1- cat > fic1.txt
2- cat fic1.txt
3- La commande stat nous donne beaucoup dinformations relatives sur les fichiers parmi eux la taille.

Exercice 2:
1- cp fic1.txt fic2.txt
2- diff -rq fic1.txt fic2.txt
3- mv fic2.txt fic3.txt
4- mv fic2.txt fic3.txt supprime le fichier fic2 et crer un autre de nom fic3 avec le mme contenue, mais la commande
cp fic2.txt fic3.txt juste crer une autre copie du fic2 dans fic3

Exercice 3:
1- mkdir test
2- mv fic3.txt test/fic3.txt

3- cp fic1.txt fic1-copie.txt,
mv fic1-copie.txt test/fic1-copie.txt.

Exercice 4:
1. rmdir test
rmdir: failed to remove `test': Directory not empty
2. rm -Rf test

Exercice 5:
1. La option R de la commande ls est de lister les rpertoires recursivment.
2. Par ordre alphabtique. Chacune des listes de fichiers (fichiers autres que des rpertoires, et contenu de
chaque rpertoire) est trie sparment en fonction de la squence d'ordre de la localisation en cours.
-r Inverser le tri du contenu des rpertoires.

-t Trier le contenu des rpertoires en fonction de la date et non pas en ordre alphabtique. Les fichiers les
plus rcents sont prsents en premier.
-S Trier les rpertoires en fonction de la taille de fichier et non pas en ordre alphabtique. Les fichiers les plus
gros sont affichs en premier.
-X Trier le contenu des rpertoires en fonction de l'extension du nom de fichier (les caractres aprs le dernier '.'). Les fichiers sans extension sont affichs en premier.
3. Affichage du contenu du rpertoire courant de telle sorte que les fichiers modifis rcemment apparaissent
en premier avec la commande ls et ces options suivantes : ls -lt
4. Les droits du rpertoire de connexion sobtient avec la commande : ls -al
5. La commande ls -l En plus du nom, affiche le type du fichier, les permis d'accs, le nombre de liens physiques, le nom du propritaire et du groupe, la taille en octets, et l'horodatage.
6. Afficher les droits d'un rpertoire ou dun fichier donns avec la commande : ls <fichier> -al
7. La commande ls nous affiche le contenu du rpertoire avec des signes distinctifs qui permettent d'identifier
plus vite le type de fichiers (slash / pour les rpertoires, arobase @ pour les liens, etc). L'option qui ajoute ces
caractres est : ls -F
8. Dans les droits du groupe et des autres, il n'y a pas de lettre r, donc si je ne suis pas propritaire je ne peux
pas afficher le contenu du rpertoire.

Exercice 6:
8. Pour crer un rpertoire en spcifiant les droits avec la commande mkdir en ajoutant loption m.
9. mkdir -p Rep_A/Rep_B/Rep_
10.
a) mkdir -p Rep_A/Rep_C
b) mkdir Rep_A/Rep_C

Exercice 7:
1. Pour copier tout le rpertoire et ses sous rpertoire on utilise la commande cp avec loption r (ou -R).
2. cp -irf tentative essai
3. On ne peut pas dupliquer le mme fichier dans un rpertoire.
4. cp fichier1 fichier2 fichier3 repertoire
5. La commande mv renomme un fichier en spcifiant un nouveau nom, mais si le nom de fichier existe dj il
va tre remplac par le fichier destinataire.
6. mv irf rep1 rep2
7. mv fichier_ancient Repertoire/fichier_nouveau.
8. Les options i et f sont les responsables de interagir et forcer lexcution de la commande mv.

Exercice8 :
1. touch Fich1 fich2 fich3 fich31 Fich34 fich341 Fich_test file-fichiers.
2. mv Fich1 fich2 fich3 fich31 Fich34 fich341 Fich_test file-fichiers Test_Rep.
3. On liste les fichiers avec la commande ls ls
- Les fichiers terminant par 1 :
~/Test_Rep$ ls -ls *1
- commenant par fich3:
~/Test_Rep$ ls -ls fich3*
- commenant par fich3 et de 6 lettres maximum :
~/Test_Rep$ ls -ls fich3?
- commenant par fich avec aucun chiffre numrique :
~/Test_Rep$ ls -ls [fF]ich[!0-9]*
- contenant la chane ch :
~/Test_Rep$ ls -ls *ch*
- commenant par f ou F :
~/Test_Rep$ ls -ls [fF]*
~/Test_Rep$ cp *[34]? ../tmp
~/tmp$ ls -ls

Exercice9:
1. ~$ umask 0022
~$ mkdir Rep_DroitAcces

Pour donner des droits daccs au rpertoire cre on utilise la commande chmod :
Commande1 :
~$ chmod 751 Rep_DroitAcces
~$ chmod u=rwx,g=rx,o=x Rep_DroitAcces
Commande2 :
~$ chmod 521 Rep_DroitAcces
~$ chmod u=rx,g=w,o=x Rep_DroitAcces
Commande3 :
~$ chmod 214 Rep_DroitAcces
~$ chmod u=w,g=x,o=r Rep_DroitAcces
Commande4 :
~$ chmod 150 Rep_DroitAcces
~$ chmod u=x,g=rx,o=--- Rep_DroitAcces

2.
Commande1:
~$ chmod 751 Rep_DroitAcces
~$ cd Rep_DroitAcces
~/Rep_DroitAcces$ ls
fic_droit
~/Rep_DroitAcces$ ls -ls > fic_droit

Commande2:
~$ chmod 521 Rep_DroitAcces
~$ cd Rep_DroitAcces
~/Rep_DroitAcces$ ls
fic_droit
~/Rep_DroitAcces$ ls -ls > fic_droit
~/Rep_DroitAcces$ touch fic
touch: cannot touch `fic': Permission denied

Commande3:
~$ chmod 214 Rep_DroitAcces
~$ cd Rep_DroitAcces
bash: cd: Rep_DroitAcces: Permission denied
~$ ls /Rep_DroitAcces
ls: cannot access /Rep_DroitAcces: No such file or directory
~$ touch fice /Rep_DroitAcces
touch: cannot touch `/Rep_DroitAcces': Permission denied

Commande4:
~$ chmod 150 Rep_DroitAcces
~$ cd Rep_DroitAcces
~/Rep_DroitAcces$ ls

ls: cannot open directory .: Permission denied


~/Rep_DroitAcces$ touch file
touch: cannot touch `file': Permission denied

3. Pour changer lumask en sorte que les nouveaux fichiers aient les droits daccs 640 (rw- r-----) et
notamment obtenir des nouveaux rpertoires avec les droits daccs 750 (rwxr-x---) on change lumask par
dfaut 0002 avec la commande : umask 0027.

Exercice 10 :
1. chmod g+w fic1.
2. Pour ajouter tout les utilisateurs all le droit dexcution on fait la commande suivantes:
~$ chmod a+x fic1
~$ ls -ls fic*
3. On excute la commande suivante:
~$ chmod u=rw,g=x,o=x fic2
~$ ls -ls fic2

4. ~$ chmod g=u,o=u fic2


5. On travaille avec loption R pour changer les droits daccs dun rpertoire et ses fichiers rcursivement.
6. Pour spcifier des droits daccs en mme temps de la cration dun rpertoire on utilise loption m.
7.
/$ ls -ls /home
total 4
Lutilisateur a tous les droits daccs sur le rpertoire courant.
Le groupe des utilisateurs peuvent crer et excuter les fichiers internes mais non pas modifier le contenu.
Les autres utilisateurs ont les mmes droits que le groupe des utilisateurs.

Exercice 11 :
1. cat nomfichier1 nomfichier2
2. cat f1 > f2
3. cat > notes.
4. cat fic1 fic2 > fic3 et cat fic1 fic2 >> fic3
5..cat -n f1 > f4.

Exercice 12 :
1.
- 10 premires lignes du fichier /etc/hosts : @ubuntu:/etc$ head 10 hosts
- 15 dernires lignes du fichier /etc/hosts : @ubuntu:/etc$ tail 15 hosts
- Toutes les lignes partir de la 15ime : @ubuntu: /etc $ tail -n +15 hosts
- Les lignes 15 20 : @ubuntu: /etc $ head -20 hosts | tail -6
2. Pour rcuprer les lignes 5 9 d'un fichier de 12 lignes on tape la commande: head -9 fichier | tail -5
3. Pour afficher la cinquime ligne d'un fichier on excute la commande : head -5 f4 | tail -1
4. Le nombre de lignes, de mots et de caractres existant dans le fichier /etc/passwd sont les suivants :
Linformation complte
/etc$ wc -lwm passwd
34 56 1661 passwd
Nombre de lignes
/etc$ wc -l passwd
34 passwd
Nombre de mots
/etc$ wc -w passwd
56 passwd
Nombre de caractres
/etc$ wc -m passwd
1661 passwd
6. Editez (ou affichez) les cinq dernires lignes du fichier : tail -5 f4
7. Editez (ou affichez) les cinq premiers caractres du fichier : head -5 f4

Exercice 13:
1. cp : cp /etc/passwd ~
2. cut -d : -f1 passwd
3. sort passwd
4. cut -d : -f1,4 passwd | sort -t: +1 -2 > fich-result
5. tr ":" " " < fich-result

Exercice 14 :

14.I :
1. find <repertoire de recherche> -name [cC]*[2-7]
2. find <repertoire de recherche> -mtime +20,
find <repertoire de recherche> -mtime 20
find <repertoire de recherche> -mtime -20
3
find <repertoire de recherche> -newer <fichier>
4. find <repertoire de recherche> -type d
5. find <repertoire de recherche> -size <taille>

14.II :
Les commandes pour chercher les fichiers selon les critres suivants sont :
1- Fichiers se terminant par .txt : find / -name "*.txt"
2- Fichiers Commenant par f ou F : find / -name "[fF]*"
3- Fichiers ne contenant pas de chiffres : find ~ ! -name "*[0-9]*"

14.II :
On trouve tous les fichiers dont la taille dpasse 1Mo (2000 blocs de 512Ko) et dont les droits sont fixs 755 (-rwxr-xrx) laide de la commande : @ubuntu:/usr$ find ~ -size 2000 | find -perm 755

14.IV :
Pour trouver le nombre de fichiers qui vrifient les critres suivants : Appartenant lutilisateur principal et ayant
les droits fixs 666 (-rw-rw-rw-) on excute la commande comme suit: find / -user fatima | find -perm 666

14.V :
On peut chercher la fois dans deux rpertoires grce la concatnation de deux rpertoires dans la commande find :
find / ~ -name "fic*"

Exercice 15 :
15.I :
Critre 1 : Le nom doit tre Test ou test ls -ls | grep "[Tt]est"
Critre 2 : que est en fin de nom ls -ls | grep "que"
Critre 3 : GC est prsent dans le nom ls -ls | grep "GC"
Critre 4 : Nom contenant un chiffre numrique ls | grep "[0-9]"
Critre 5 : Nom contenant la chane ll ou LL ls | grep "[lL]\{2\}"

15.II :
grep <user> passwd

15.III :
cut -d : -f1 passwd | grep -v [0-9]

15.VI :
cut -d : -f1 passwd | grep "^...$\|^......$"