Sous Linux, tout est fichier:
Dans la suite, nous distinguerons les fichiers des répertoires.
Par défaut, ls
affiche tous les fichiers visibles.
$ ls Documents examples.desktop Modèles Téléchargements Vidéos Bureau Images Musique Public snap
Les fichiers cachés sont ceux dont le nom commence par un point .
.
Même s'ils sont présent dans le répertoire, ls
ne les affiche pas.
Par exemple: .bashrc
$ ls .bashrc .bashrc
L'option -a
(pour all) de ls
permet d'afficher aussi les fichiers cachés.
$ ls -a . Documents examples.desktop Modèles Téléchargements .. Vidéos Bureau Images Musique Public .bashrc snap
ls -a
commence par afficher les « fichiers » .
et ..
.
Ils représentent respectivement le répertoire courant (.
) et son répertoire parent (..
).
Ainsi, si vous voulez connaître les fichiers contenus dans le répertoire parent, vous pouvez utiliser le chemin relatif ..
.
$ ls .. parmentf houdry
En l'occurrence, et en supposant qu'on se trouve dans le répertoire par défaut (aussi appelé home directory), l'appel à ls ..
montre les répertoires par défaut de tous les utilisateurs de l'ordinateur.
De même, ls .
est strictement équivalent à ls
, il liste les fichiers du répertoire courant.
Mais on peut composer un chemin en joignant des noms de répertoires avec le caractère /
.
📗 À noter: sous Windows, le caractère correspondant est
\
.
Au minimum ls ./
est strictement équivalent à ls .
et donc à ls
.
Mais on peut aller plus loin en faisant ls ./Documents
, voire ls ./Documents/Unix
.
Comme ..
est un chemin relatif, on peut aussi l'utiliser.
Par exemple ls ../houdry/Documents
permet de lister les fichiers du répertoire Documents
de l'utilisateur Unix houdry
.
💡 Les chemins relatifs sont utilisables comme paramètres de toutes les commandes attendant un chemin de fichier (typiquement
cat
,cp
,mv
,rm
, ...)💡 Les chemins relatifs évitent d'avoir à utiliser la commande
cd
pour se mettre dans le répertoire où se trouve le(s) fichier(s) à utiliser.
Un chemin absolu est un chemin qui précise la localisation d'un fichier depuis la racine de l'arborescence des fichiers.
Il commence obligatoirement par le caractère /
.
⚠️ Tout chemin de fichier commençant par un caractère différent de
/
est un chemin relatif !
Il est relatif au répertoire courant.
Sur un système Ubuntu (distribution Linux très répandue), voici les répertoires présents à la racine.
$ ls / bin dev initrd.img lib64 mnt root snap tmp vmlinuz boot etc initrd.img.old lost+found opt run srv usr vmlinuz.old cdrom home lib media proc sbin sys var
Ces répertoires peuvent varier selon les distributions, mais globalement:
bin
: contient des binaires (des exécutables, dont la plupart des commandes déjà citées)cdrom
: permet d'accéder éventuellement à un CD-ROM dans son lecteuretc
: des fichiers liés aux applications du système (configuration)lib
: des bibliothèques logicielles diversesproc
: des fichiers dynamiques liés à l'exécution du système (essayer cat /proc/uptime
)home
: les répertoires par défaut des utilisateurs du systèmeopt
: des logiciels alternatifssbin
: des commandes systèmetmp
: fichiers temporaires (nettoyé à chaque démarrage)var
: données liées à certains logicielspwd
donne le chemin courant absolu:
$ pwd /home/parmentf
Ainsi le répertoire ./Documents
à partir du répertoire par défaut de parmentf
a pour chemin absolu /home/parmentf/Documents
.
L'avantage est qu'il univoque, alors qu'un chemin relatif dépend entièrement du répertoire où on se trouve quand on l'utilise.