This is an old revision of the document!


Lab 02 - Travailler avec des fichiers

Chemins dans la hiérarchie des fichiers

Lors de l'utilisation d'un terminal, il est important de savoir où l'on se situe dans la hiérarchie. Si nous voulons jouer à un jeu, nous savons que nous voulons aller dans le répertoire Jeux, où se trouve notre jeu préféré, Warcraft3. Pour accéder au répertoire Games, nous devons savoir où nous nous trouvons, puis naviguer dans le système de fichiers pour y arriver.

Une hiérarchie de fichiers et de répertoires est une structure pour les organiser. La structure hiérarchique permet de les regrouper dans des répertoires, qui à leur tour contiennent d'autres répertoires ou fichiers. De cette façon, nous ne pouvons travailler qu'avec un sous-ensemble de fichiers et de répertoires sur le total du système.

Un tel exemple est le suivant :

Sous Linux, le début de cette hiérarchie est /, le répertoire racine du système de fichiers. Si nous considérons le système de fichiers comme un arbre inversé, le répertoire racine est la racine même de cet arbre. À partir de là, les branches et les feuilles du système de fichiers se développent, formant ce que nous appellerons des chemins.

Nous pouvons voir le début de la hiérarchie Linux ci-dessous :

student@uso:/$ tree -F -L 1 /
/
|-- bin/
|-- boot/
|-- dev/
|-- etc/
|-- home/
|-- initrd.img -> /boot/initrd.img-3.16.0-4-586
|-- lib/
|-- lib64/
|-- libx32/
|-- lost+found/
|-- media/
|-- mnt/
|-- opt/
|-- proc/
|-- root/
|-- run/
|-- sbin/
|-- srv/
|-- sys/
|-- tmp/
|-- usr/
|-- var/
``-- vmlinuz -> boot/vmlinuz-3.16.0-4-586

On remarque / (le répertoire racine) au début de la hiérarchie. Au niveau suivant, c'est-à-dire les branches / enfants du répertoire racine, se trouvent les répertoires bin, boot, dev, etc.

On observe le contenu du répertoire home :

student@uso:/home$ tree -F -L 1 /home
.
``-- student/

Il n'y a qu'un seul directeur, appelé student.

Nous remarquons comment l'invite du terminal change :

  • dans le premier exemple étudiant@uso:/$ tree -F -L 1 / était dans le répertoire /.
  * dans le deuxième exemple étudiant@uso:/home$ tree -F -L 1 j'étais dans le répertoire /home.

Ensuite, nous détaillons le concept de chemin.

Le chemin actuel

Nous partons de l'analogie suivante : Nous avons quatre points sur une droite : A, B, C et D. Pour aller de A à D, nous devons passer par B et C. Ainsi, nous avons les segments suivants : AB, BC , CD.

De même, pour le système de fichiers, nous commençons au répertoire racine (/) et descendons dans l'arborescence.

La liste des répertoires intermédiaires depuis la racine de la hiérarchie des fichiers (/) jusqu'à un fichier ou un répertoire particulier est appelée chemin.

Le chemin actuel est notre position dans le système de fichiers.

Dans la ligne de commande, nous affichons le chemin d'accès au répertoire dans lequel nous nous trouvons (chemin actuel) à l'aide de la commande pwd (print working directory) : code bash> student@uso:~$ pwd
/home/student
</code>

Cela montre notre position dans le système de fichiers.

Nous passons au chemin /usr/bin en utilisant la commande cd (change directory) :

<code bash>
student@uso:~$ pwd /home/student student@uso:~$ cd /usr/bin/
student@uso:/usr/bin$ pwd /usr/bin </code>

Nous sommes maintenant à la position /usr/bin dans le système de fichiers. Nous remarquons comment le chemin actuel change lorsque nous changeons le répertoire dans lequel nous nous trouvons.

Chemin relatif et chemin absolu

Lorsque nous voulons lire, écrire, supprimer un fichier ou un répertoire, nous devons nous référer à ce fichier ou répertoire. Pratiquement toutes les opérations du système de fichiers (archiver, chiffrer, supprimer, modifier) ​​utilisent des chemins. Il est incorrect de dire “ouvrez le fichier /home/student/a.txt” ; techniquement correct est “ouvrez le fichier à partir du chemin /home/student/a.txt”.

Dans le système de fichiers, nous pouvons faire référence à un fichier de 2 manières : en utilisant le chemin relatif ou en utilisant le chemin absolu.

Prenons par exemple une série sur Netflix. Nous nous référons à un épisode de deux manières :

  • Depuis le début - le premier épisode (tout à fait) : Dans l'épisode 213, il s'est passé quelque chose.
  • Quant à l'épisode actuel (relativement parlant): il y a 3 épisodes, quelque chose s'est passé.

De même, nous nous référons à un fichier :

  • Partant de la racine de la hiérarchie des fichiers (racine), représentée par le symbole /, appelée chemin absolu.
  • En partant du répertoire dans lequel nous nous trouvons (répertoire courant), appelé chemin relatif.

Chemin absolue

Comme indiqué ci-dessus, le chemin absolu commence toujours par le caractère / (barre oblique), également appelé répertoire racine. Ceci indique le début de la hiérarchie des fichiers.

On liste les fichiers /usr/bin/touch et /etc/passwd par chemin absolu en utilisant ls :

student@uso:~$ ls -l /usr/bin/touch
lrwxrwxrwx 1 root root 10 Mar 14  2015 /usr/bin/touch -> /bin/touch
student@uso:~$ ls -l /etc/passwd
-rw-r--r-- 1 root root 1768 Sep  9 14:07 /etc/passwd

On a utilisé l'option -l de l'utilitaire ls pour afficher des informations supplémentaires sur les fichiers.

On remarque qu'au début des chemins il y a toujours le caractère '/' (le répertoire racine).

sde2/laboratoare/01_uso.1678734736.txt.gz · Last modified: 2023/03/13 21:12 by cristiana.andrei
CC Attribution-Share Alike 3.0 Unported
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0