Académique Documents
Professionnel Documents
Culture Documents
Chapitre III
Chapitre III
2.3 Leçon 1
Introduction
Certification : Linux Essentials
Version : 1.6
Thème : 2 Trouver son Chemin sur un Système Linux
Objectif : 2.3 Utilisation des Répertoires et Listage des
Fichiers
Leçon: 1 sur 2
Fichiers et Répertoires
Le système de fichiers Linux est similaire aux systèmes de fichiers d’autres systèmes d’exploitation
car il contient des fichiers et des répertoires. Les fichiers contiennent des données telles que du texte
lisible par l’homme, des programmes exécutables ou des données binaires utilisées par l’ordinateur.
Les répertoires sont utilisés pour créer une organisation au sein du système de fichiers. Les
répertoires peuvent contenir des fichiers et d’autres répertoires.
$ tree
Documents
Mission-Statement.txt
Reports
report2018.txt
1 directory, 2 files
Version: 2022-08-24 | Licencié sous CC BY-NC-ND 4.0. | learning.lpi.org | 117
Linux Essentials (Versión 1.6) | Sujet 2 : Trouver son chemin sur un système Linux
Dans cet exemple, Documents est un répertoire qui contient un fichier (Mission-Statement.txt) et un
sous-répertoire (Reports). Le répertoire Reports contient à son tour un fichier appelé report2018.txt.
Le répertoire Documents est dit être le parent du répertoire Reports.
Si la commande tree n’est pas disponible sur votre système, installez-la en utilisant le
gestionnaire de paquets de votre distribution Linux. Reportez-vous à la leçon sur la gestion des
paquets pour savoir comment faire.
Les noms de fichiers et de répertoires dans Linux peuvent contenir des minuscules et des majuscules,
des chiffres, des espaces et des caractères spéciaux. Cependant, comme de nombreux caractères
spéciaux ont une signification particulière dans le shell Linux, il est conseillé de ne pas utiliser
d’espaces ou de caractères spéciaux lors de la dénomination des fichiers ou des répertoires. Les
espaces, par exemple, nécessitent le caractère d’échappement \ pour être saisis correctement :
$ cd Mission\ Statements
Aussi, en se référant au nom de fichier report2018.txt. Les noms de fichiers peuvent contenir un
suffixe qui vient après le point (.). Contrairement à Windows, ce suffixe n’a pas de signification
particulière dans Linux ; il est là pour la compréhension humaine. Dans notre exemple, .txt nous
indique qu’il s’agit d’un fichier en texte clair, bien qu’il puisse techniquement contenir n’importe
quel type de données.
Comme les shells Linux tels que Bash sont basés sur du texte, il est important de se souvenir de votre
emplacement actuel lorsque vous naviguez dans le système de fichiers. L'invite de commande fournit
cette information :
user@hostname ~/Documents/Reports $
Notez que les informations telles que user et hostname seront traitées dans les prochaines sections.
Grâce à l’invite, nous savons maintenant que notre emplacement actuel se trouve dans le répertoire
Reports. De même, la commande pwd (print working directory) affichera le répertoire de travail :
118 | learning.lpi.org | Licencié sous CC BY-NC-ND 4.0. | Version: 2022-08-24
Linux Essentials (Versión 1.6) | 2.3 Utilisation des répertoires et liste des fichiers
La relation des répertoires est représentée par une barre oblique (/). Nous savons donc que Reports
est un sous-répertoire de Documents, qui est un sous-répertoire de user, qui est situé dans un
répertoire appelé home. home ne semble pas avoir de répertoire parent, mais ce n’est pas vrai du tout.
Le parent de home est appelé root (racine), et est représenté par la première barre oblique ( /). Nous
parlerons du répertoire root dans une section ultérieure.
Notez que la sortie de la commande pwd diffère légèrement du chemin donné à l’invite de commande.
Au lieu de /home/user, l’invite de commande contient un tilde (~). Le tilde est un caractère spécial
qui représente le répertoire personnel de l’utilisateur. Ce point sera abordé plus en détail dans la
prochaine leçon.
user@hostname ~/Documents/Reports $ ls
report2018.txt
Notez que ls ne fournit aucune information sur le répertoire parent. De même, par défaut, ls
n’affiche aucune information sur le contenu des sous-répertoires. ls ne peut que “voir” ce qui se
trouve dans le répertoire courant.
La navigation dans Linux se fait principalement avec la commande cd. De l’anglais change directory.
En utilisant la commande pwd d’avant, nous savons que notre répertoire actuel est
/home/user/Documents/Reports. Nous pouvons changer notre répertoire actuel en entrant un
nouveau chemin :
user@hostname ~ $ cd /home/user/Documents
user@hostname ~/Documents $ pwd
/home/user/Documents
user@hostname ~/Documents $ ls
Mission-Statement.txt Reports
Depuis notre nouvel emplacement, nous pouvons “voir” Mission-Statement.txt et notre sous-
Version: 2022-08-24 | Licencié sous CC BY-NC-ND 4.0. | learning.lpi.org | 119
Linux Essentials (Versión 1.6) | Sujet 2 : Trouver son chemin sur un système Linux
répertoire Reports, mais pas le contenu de notre sous-répertoire. Nous pouvons retourner dans
Reports de cette manière :
La commande pwd affiche toujours un chemin absolu. Cela signifie que le chemin contient chaque
niveau du chemin, du début du système de fichiers (/) au bout ( Reports). Les chemins absolus
commencent toujours par un /.
/
home
user
Documents
Reports
Le chemin absolu contient toutes les informations nécessaires pour accéder à Reports depuis
n’importe quel endroit du système de fichiers. L’inconvénient est qu’il est fastidieux à taper.
Le deuxième exemple (cd Reports) était beaucoup plus facile à taper. Il s’agit d’un exemple de
chemin relatif. Les chemins relatifs sont plus courts mais n’ont de sens que par rapport à votre
position actuelle. Considérez cette analogie : Je vous rends visite à votre domicile. Vous me dites que
votre ami habite à côté de chez vous. Je comprendrai cette situation parce qu’elle est relative à ma
situation actuelle. Mais si vous me dites cela par téléphone, je ne pourrai pas trouver la maison de
votre ami. Vous devrez me donner l’adresse complète de la rue.
Le shell Linux nous donne des moyens de raccourcir nos chemins lors de la navigation. Pour révéler
les premiers chemins spéciaux, nous entrons dans la commande ls avec le drapeau -a. Ce drapeau
modifie la commande ls de manière que tous les fichiers et répertoires soient listés, y compris les
fichiers et répertoires cachés :
120 | learning.lpi.org | Licencié sous CC BY-NC-ND 4.0. | Version: 2022-08-24
Linux Essentials (Versión 1.6) | 2.3 Utilisation des répertoires et liste des fichiers
user@hostname ~/Documents/Reports $ ls -a
.
..
report2018.txt
Cette commande a révélé deux résultats supplémentaires : Il s’agit de chemins spéciaux. Ils ne
représentent pas de nouveaux fichiers ou répertoires, mais plutôt des répertoires que vous
connaissez déjà :
..
Il n’est généralement pas nécessaire d’utiliser le chemin relatif spécial pour l’emplacement actuel. Il
est plus facile et plus compréhensible de taper report2018.txt que de taper ./report2018.txt. Mais
./report2018.txt a des utilisages que vous apprendrez dans les sections suivantes. Pour l’instant,
nous allons nous concentrer sur le chemin relatif du répertoire parent :
user@hostname ~/Documents/Reports $ cd ..
user@hostname ~/Documents $ pwd
/home/user/Documents
L’exemple de cd est beaucoup plus facile lorsqu’on utilise .. au lieu du chemin absolu. De plus, nous
pouvons combiner ce modèle pour remonter très rapidement dans l’arborescence des fichiers.
Version: 2022-08-24 | Licencié sous CC BY-NC-ND 4.0. | learning.lpi.org | 121
Linux Essentials (Versión 1.6) | Sujet 2 : Trouver son chemin sur un système Linux
Exercices Guidés
1. Pour chacun des chemins suivants, identifiez s’il est absolu ou relatif :
/home/user/Downloads absolu
../Reports relatif
/var absolu
docs relatif
/ absolu
2. Observez la structure de fichiers suivante. Note : Les répertoires se terminent par une barre
oblique (/) lorsque tree est invoqué avec l’option -F. Vous aurez besoin de privilèges élevés afin
d’exécuter la commande tree sur le répertoire racine (/). Ce qui suit est un exemple de sortie et
n’est pas indicatif d’une structure de répertoires complète. Utilisez-le pour répondre aux
questions suivantes :
$ sudo tree -F /
/
etc/
network/
interfaces
systemd/
resolved.conf
system/
system.conf
user/
user.conf
udev/
rules.d/
udev.conf
home/
lost+found/
user/
Documents/
12 directories, 5 files
122 | learning.lpi.org | Licencié sous CC BY-NC-ND 4.0. | Version: 2022-08-24
Linux Essentials (Versión 1.6) | 2.3 Utilisation des répertoires et liste des fichiers
$ cd /etc/udev
$ ls -a
3. Saisissez la commande la plus courte possible pour chacun des cas suivants :
◦ Votre localisation actuelle est la racine (/). Entrez la commande pour naviguer vers
lost+found situé dans le répertoire home (exemple) :
$ cd home/lost+found
◦ Votre localisation actuelle est la racine (/). Entrez la commande pour naviguer vers le
répertoire nommé /etc/network/.
cd /etc/network
$ pwd
/etc/udev/rules.d
$ cd ../../systemd/user
$ cd ..
$ pwd
systemd/
Version: 2022-08-24 | Licencié sous CC BY-NC-ND 4.0. | learning.lpi.org | 123
Linux Essentials (Versión 1.6) | Sujet 2 : Trouver son chemin sur un système Linux
Exercices d’Exploration
1. Supposons qu’un utilisateur ait entré les commandes suivantes :
2. Essayez à nouveau, mais après avoir tapé cd this, appuyez sur la touche TAB. Qu’est-ce qui est
maintenant affiché à l’invite ?
cd this
cd this \is \a \test
C’est un exemple d'autocomplétion, qui est un outil inestimable non seulement pour gagner du
temps, mais aussi pour prévenir les erreurs d’orthographe.
124 | learning.lpi.org | Licencié sous CC BY-NC-ND 4.0. | Version: 2022-08-24
Linux Essentials (Versión 1.6) | 2.3 Utilisation des répertoires et liste des fichiers
Résumé
Dans cette leçon, vous avez appris :
cd
pwd
ls
mkdir
tree
Version: 2022-08-24 | Licencié sous CC BY-NC-ND 4.0. | learning.lpi.org | 125
Linux Essentials (Versión 1.6) | Sujet 2 : Trouver son chemin sur un système Linux
/home/user/Downloads absolu
../Reports relatif
/var absolu
docs relatif
/ absolu
2. Observez la structure de fichiers suivante. Note : Les répertoires se terminent par une barre
oblique (/) lorsque tree est invoqué avec l’option -F. Vous aurez besoin de privilèges élevés afin
d’exécuter la commande tree sur le répertoire racine (/). Ce qui suit est un exemple de sortie et
n’est pas indicatif d’une structure de répertoires complète. Utilisez-le pour répondre aux
questions suivantes :
$ sudo tree -F /
/
etc/
network/
interfaces
systemd/
resolved.conf
system/
system.conf
user/
user.conf
udev/
rules.d/
udev.conf
home/
lost+found/
user/
Documents/
12 directories, 4 files
126 | learning.lpi.org | Licencié sous CC BY-NC-ND 4.0. | Version: 2022-08-24
Linux Essentials (Versión 1.6) | 2.3 Utilisation des répertoires et liste des fichiers
$ cd /etc/udev
$ ls -a
. .. rules.d udev.conf
3. Saisissez la commande la plus courte possible pour chacun des cas suivants :
◦ Votre localisation actuelle est la racine (/). Entrez la commande pour naviguer vers
lost+found dans le répertoire home (exemple) :
$ cd home/lost+found
◦ Votre localisation actuelle est la racine (/). Entrez la commande pour naviguer vers le
répertoire nommé /etc/network :
$ cd etc/network
$ cd /etc
$ cd /home/user
$ pwd
/etc/udev/rules.d
$ cd ../../systemd/user
$ cd ..
$ pwd
Version: 2022-08-24 | Licencié sous CC BY-NC-ND 4.0. | learning.lpi.org | 127