Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
chemins [Le 28/11/2023, 17:05] – [Chemin relatif] 193.49.125.146chemins [Le 14/04/2026, 07:14] (Version actuelle) – màj lien interne krodelabestiole
Ligne 1: Ligne 1:
 {{tag>système bionic focal}} {{tag>système bionic focal}}
  
-nn+====== Les chemins d'accès sous Linux ====== 
 + 
 +En informatique, les contenus sont généralement stockés dans des fichiers. 
 + 
 +Comme ceux-ci sont vite très nombreux, pour s'y retrouver on a conçu les [[:systeme_de_fichiers|systèmes de fichiers]] comme des [[:arborescence|arborescences]] : les fichiers sont stockés dans des [[wpfr>répertoire (informatique)|répertoires]]((Windows et MacOS les appellent des //dossiers// ou //folders//. Ce sont des //répertoires// ou //directories// pour le reste du monde informatique.)), et en plus des fichiers chacun de ces répertoires peut lui-même contenir plusieurs autres répertoires. 
 + 
 +La référence à une ressource (fichier ou répertoire) s'appelle un [[wpfr>chemin d'accès]] (en anglais : //path//). Dans ce chemin, sous Linux, les noms des répertoires et éventuel fichier sont séparés par un //slash// ''/'' (alors qu'on utilise un //antislash// ''\'' sous Windows). 
 + 
 +Il existe deux types de chemin : //absolu// et //relatif//
 + 
 +<note tip>Sur **[[:nautilus|GNOME Fichiers]]**, on peut voir le chemin courant, ou en entrer un, avec le [[:nautilus#raccourcis clavier|raccourci clavier]] ''Ctrl''+''L''.</note> 
 + 
 +===== Chemin absolu ==== 
 + 
 +<note> 
 +Dans les exemples suivants les termes entre caractères ''<'' et ''>'' sont à remplacer par les valeurs qu'ils indiquent, //avec les caractères ''<'' et ''>'' eux-mêmes//
 +</note> 
 + 
 +Un chemin absolu se base sur la [[:arborescence#racine]] de l'arborescence et commence par ''/'', par exemple : 
 +  * ''/home/<nom d'utilisateur>/<autre répertoire>/<nom de fichier>'' pour la plupart des documents personnels. 
 +  * ''/usr/share/icons/'' est le premier répertoire où le système cherche les [[:tutoriel:installer_theme_icones|icônes]] des applications. 
 +  * ''/etc/apt/sources.list'' est le principal fichier de configuration d'[[:APT]]. 
 +Il reste valable quel que soit le contexte (à condition quand même d'être sur le même système d'une même machine). 
 + 
 +Cette [[:arborescence#racine]] ''/'' correspond à l'emplacement où le système Linux courant est installé.((Voir le //[[:montage|Montage des systèmes de fichiers]]//.)) 
 +<note tip>''/'' au tout début d'un chemin est donc à peu près l'équivalent du ''C:\'' sous Windows.</note> 
 + 
 +===== Chemin relatif ==== 
 + 
 +Un chemin relatif est a priori relatif au répertoire courant où se trouve l'utilisateur. Un chemin qui commence par autre chose que ''/'' ou ''~'' est un chemin relatif. Cette notion de positionnement dépend du contexte, mais sous Linux on se trouve généralement par défaut dans son [[:arborescence#répertoire personnel]] qui est ''/home/<nom d'utilisateur>''. Dans un [[:terminal]] on peut naviguer d'un répertoire à l'autre avec la commande [[:tutoriel:console_ligne_de_commande#cd|cd]]. 
 + 
 +On peut aussi utiliser ce type de chemin pour indiquer où se trouvent les ressources les unes par rapport aux autres, indépendamment de la [[:arborescence#racine]] du système, par ex. pour que les fichiers d'un site web susceptibles d'être déplacés ensemble puissent se retrouver les uns les autres. 
 + 
 +===== Liens ===== 
 + 
 +On peut utiliser des [[:lien_physique_et_symbolique|liens physiques ou symboliques]] pour créer par ex. des raccourcis entre différents chemins. 
 + 
 +En particulier ''.'' utilisé comme un nom de répertoire indique le répertoire courant, et ''..'' indique le répertoire parent (il s'agit ici de [[http://teaching.idallen.com/dat2330/04f/notes/links_and_inodes.html|liens physiques]]).
  
-bhbh 
-ujhb 
 ===== Raccourcis Shell ===== ===== Raccourcis Shell =====
  
-//Tilde// ''~'' utilisé en premier nom de répertoire remplace le chemin absolu vers son répertoire personnel soit ''/home/utilisateur'' (voir [[http://www.gnu.org/software/bash/manual/html_node/Tilde-Expansion.html|Tilde Expansion]]), mais cette fonctionnalité est propre au [[:shell]], et pas au [[:systeme_de_fichiers|système de fichier]].+//Tilde// ''~'' utilisé en premier nom de répertoire remplace le chemin absolu vers son [[:arborescence#répertoire personnel]] soit ''/home/utilisateur'' (voir [[http://www.gnu.org/software/bash/manual/html_node/Tilde-Expansion.html|Tilde Expansion]]), mais cette fonctionnalité est propre au [[:shell]], et pas au [[:systeme_de_fichiers|système de fichier]].
  
 ===== Ressources cachées ===== ===== Ressources cachées =====
Ligne 18: Ligne 53:
 Généralement on peut aussi les afficher avec un gestionnaire de fichier graphique (par défaut sur Ubuntu : [[:nautilus|GNOME Fichiers - anciennement Nautilus]]) avec le raccourci //Ctrl// + //h// (pour //**h**idden//). Généralement on peut aussi les afficher avec un gestionnaire de fichier graphique (par défaut sur Ubuntu : [[:nautilus|GNOME Fichiers - anciennement Nautilus]]) avec le raccourci //Ctrl// + //h// (pour //**h**idden//).
  
-<note>On trouve en particulier de nombreuses ressources cachées dans son répertoire personnel. L'idée est de cacher ici les répertoires et fichiers utilisés par le système, mais propres à l'utilisateur, pour donner une meilleure visibilité aux contenus documents ou médias de l'utilisateur.</note>+<note>On trouve en particulier de nombreuses ressources cachées dans son [[:arborescence#répertoire personnel]]. L'idée est de cacher ici les répertoires et fichiers utilisés par le système, mais propres à l'utilisateur, pour donner une meilleure visibilité aux contenus documents ou médias de l'utilisateur.</note>
  
 ===== Inodes ===== ===== Inodes =====
  
-Pour aller plus loin il faut savoir que chaque chemin vers un répertoire ou un fichier est en fait un [[:lien_physique_et_symbolique|lien physique]], et que chacun de ces liens pointe sur un [[:systeme_de_fichiers#particularite_des_systemes_de_fichiers_nixinode|inode]] qui décrit la ressource elle-même dans le système de fichier. L'inode décrit entre autre les [[:droits#les_permissions|permissions]], le [[:droits#les_proprietaires|propriétaire]], et les dates de création et modification de la ressource.+Pour aller plus loin il faut savoir que chaque chemin vers un répertoire ou un fichier est en fait un [[:lien_physique_et_symbolique|lien physique]], et que chacun de ces liens pointe sur un [[:systeme_de_fichiers#inodes|inode]] qui décrit la ressource elle-même dans le système de fichier. L'inode décrit entre autre les [[:droits#les_permissions|permissions]], le [[:droits#les_proprietaires|propriétaire]], et les dates de création et modification de la ressource.
  
 Voir cette [[wpfr>Nœud_d'index|page Wikipedia]] pour plus de détails. Voir cette [[wpfr>Nœud_d'index|page Wikipedia]] pour plus de détails.
 +
 +===== Commandes =====
 +
 +En [[:commande_shell|ligne de commande]] il faut généralement échapper les espaces et caractères spéciaux des chemins.\\
 +On peut
 +  * soit précéder ces espaces de ''\'' afin de les //[[wpfr>Caractère_d'échappement|échapper]]//
 +  * soit encadrer l'ensemble du chemin entre guillemets simples ''%%'%%'' ou doubles ''"''.
 +
 +Voici quelques outils permettant de manipuler ou d'utiliser des chemins sous Linux :
 +  * La commande ''namei -l'' permet de lister les permissions de chaque élément d'un chemin.
 +  * ''[[wpfr>Pwd|$PWD]]'' (pour //Print Working Directory//) est la [[:variables_d_environnement#autres_variables_d_environnement|variable d'environnement]] qui représente le chemin du répertoire courant.\\ Vous pouvez l'utiliser pour remplacer le texte du chemin courant, par exemple :<code>namei -l $PWD</code>(pour lister les permissions de chaque élément du chemin du répertoire courant, donc ! ;-))
  
 ===== Voir aussi ===== ===== Voir aussi =====
  
-  * [[:arborescence|Arborescence des répertoires dUbuntu]]+  * [[:arborescence|Arborescence des répertoires d'Ubuntu]]
   * [[:tutoriel:console_ligne_de_commande|Console : ligne de commande]]   * [[:tutoriel:console_ligne_de_commande|Console : ligne de commande]]
   * [[:systeme_de_fichiers|Les systèmes de fichiers sous Linux]]   * [[:systeme_de_fichiers|Les systèmes de fichiers sous Linux]]