Vous n'êtes pas identifié(e).
L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT →
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
doc:programmation:shell:repertoires [21/08/2019 06:57] smolski mise au niveau débutant de ce tuto essentiel |
doc:programmation:shell:repertoires [29/12/2019 08:49] (Version actuelle) smolski [Quelques chemins particuliers] |
||
---|---|---|---|
Ligne 11: | Ligne 11: | ||
Partons maintenant à la découverte des chemins absolus et relatifs... | Partons maintenant à la découverte des chemins absolus et relatifs... | ||
+ | |||
+ | <note important>Pour les exemples, nous allons utiliser pour le nom de la machine : ''machine'' et pour le nom user : ''toto'', pour exécuter les commandes en exemple, transposez ces noms avec ceux que vous utilisez.</note> | ||
===== Préparation du terrain ===== | ===== Préparation du terrain ===== | ||
- | Dans votre ///home/user//, placez-vous dans un nouveau dossier créé pour l'occasion. Exemple : | + | Dans votre ///home/toto//,créez un nouveau dossier avec [[doc:systeme:mkdir|la commande mkdir]], puis placez-vous dans ce nouveau dossier avec [[doc:programmation:shell:cd|la commmande cd]]. |
- | <code user>cd</code> | + | Exemple pratique : |
<code user>mkdir -p tmp/df_tp_chemins_01/</code> | <code user>mkdir -p tmp/df_tp_chemins_01/</code> | ||
<code user>cd tmp/df_tp_chemins_01/</code> | <code user>cd tmp/df_tp_chemins_01/</code> | ||
- | L'invite de commande devient | + | <note tip>L'invite de commande devient <code>toto@machine:~/tmp/df_tp_chemins_01$</code> Ce qui signifie que nous sommes placés maintenant dans le répertoire créé avec mkdir à l'intérieur du répertoire ''/home/toto''</note> |
- | <code>toto@jessie:~/tmp/df_tp_chemins_01$</code> | + | |
- | On va maintenant créer les fichiers qui nous serviront pour la | + | Avec [[doc:systeme:touch|la commande touch]], on va maintenant créer dans ce nouveau répertoire les fichiers qui nous serviront pour la suite. |
- | suite. | + | |
- | Nous y créons les fichiers : | + | Exemple des commandes de la création des fichiers : |
- | <code user>toto@jessie:~/tmp/df_tp_chemins_01$ touch phaute_dorthografe</code> | + | <code user>touch phaute_dorthografe</code> |
- | <code user>toto@jessie:~/tmp/df_tp_chemins_01$ touch notes_temporaires</code> | + | <code user>touch notes_temporaires</code> |
- | <code user>toto@jessie:~/tmp/df_tp_chemins_01$ touch quisuisje</code> | + | <code user>touch quisuisje</code> |
===== Le répertoire courant, ou répertoire de travail ===== | ===== Le répertoire courant, ou répertoire de travail ===== | ||
- | C'est ce qui est indiqué juste à gauche du ''$'' du prompt ''bash''. | + | <note important>Nous utilisons le nom ''toto'' pour indiquer l'//user// des exemples et ''machine'' pour le nom donné à la machine, transposez //toto// avec vos propres nom user et //machine// pour le nom de votre machine pour réaliser chez les exemples qui suivent.</note> |
- | <code bash> | + | |
- | ~/tmp/df_tp_chemins_01$</code> | + | |
- | Vous pouvez l'afficher en tapant la commande ''pwd'' : | + | Le répertoire courant, ou répertoire de travail est ce qui est indiqué juste à gauche du ''$'' dans le prompt((terminal)) [[doc:programmation:bash|bash]] ainsi : |
- | <code user>toto@jessie:~/tmp/df_tp_chemins_01$ pwd</code> | + | <code bash>~/tmp/df_tp_chemins_01$</code> |
- | <code config retour de la commande>/home/captnfab/tmp/df_tp_chemins_01</code> | + | |
+ | Vous pouvez l'afficher en tapant [[doc:systeme:pwd|la commande pwd]] : | ||
+ | <code user>toto@machine:~/tmp/df_tp_chemins_01$ pwd</code> | ||
+ | <code config retour de la commande>/home/toto/tmp/df_tp_chemins_01</code> | ||
On change de répertoire de travail avec [[:doc:programmation:shell:cd | la commande CD]]. | On change de répertoire de travail avec [[:doc:programmation:shell:cd | la commande CD]]. | ||
- | + | <note>Le répertoire de travail est également stocké dans la variable ''$PWD'' du shell.</note> | |
- | Le répertoire de travail est également stocké dans la variable ''$PWD'' du shell. | + | [[doc:systeme:echo|La commande echo]] à savoir pour la suite. |
- | <code user>toto@jessie:~/tmp/df_tp_chemins_01$ echo $PWD</code> | + | <code user>toto@machine:~/tmp/df_tp_chemins_01$ echo $PWD</code> |
- | <code config retour de la commande>/home/captnfab/tmp/df_tp_chemins_01</code> | + | <code config retour de la commande>/home/toto/tmp/df_tp_chemins_01</code> |
===== Chemin relatif / chemin absolu ===== | ===== Chemin relatif / chemin absolu ===== | ||
- | Pour identifier de manière unique un fichier sur un ordinateur sous Linux, on donne ce qu'on appelle un chemin vers le fichier. | + | <note tip>Pour identifier de manière unique un fichier sur un ordinateur sous Linux, on donne ce qu'on appelle un chemin vers le fichier.</note> |
Ce chemin peut être : | Ce chemin peut être : | ||
- | * //absolu// | + | * //absolu// ou |
- | * ou //relatif//. | + | * //relatif// |
===== Quelques chemins particuliers ===== | ===== Quelques chemins particuliers ===== | ||
Ligne 58: | Ligne 58: | ||
* ''..'' (deux points) désigne le répertoire parent d'un répertoire considéré | * ''..'' (deux points) désigne le répertoire parent d'un répertoire considéré | ||
* ''.'' (un point) désigne le répertoire considéré | * ''.'' (un point) désigne le répertoire considéré | ||
- | ** | + | **Exemples :** |
- | Exemples :** | + | |
* ''/home/../var'' est un chemin pour le répertoire ''/var'' | * ''/home/../var'' est un chemin pour le répertoire ''/var'' | ||
* ''ls .'' liste le répertoire courant | * ''ls .'' liste le répertoire courant | ||
Ligne 66: | Ligne 65: | ||
=== Chemin absolu === | === Chemin absolu === | ||
- | Un **chemin absolu** est un chemin depuis la racine du système de fichier, ''/'' | + | <note important>Un **chemin absolu** est un chemin depuis la racine du système de fichier, ''/''</note> |
Exemples de chemin //absolu// : | Exemples de chemin //absolu// : | ||
Ligne 74: | Ligne 73: | ||
=== Chemin relatif === | === Chemin relatif === | ||
- | Un **chemin relatif** est un chemin depuis le **répertoire de travail** : ''$PWD'' | + | <note important>Un **chemin relatif** est un chemin depuis le **répertoire de travail** : ''$PWD''</note> |
Exemple de chemin //relatif// : | Exemple de chemin //relatif// : | ||
Ligne 98: | Ligne 97: | ||
==== Exemple pour renommer des fichiers ==== | ==== Exemple pour renommer des fichiers ==== | ||
- | Lorsque l'on veut renommer un fichier, on utilise [[:doc:systeme:mv | la commande MV]] qui prend deux arguments : | + | Lorsque l'on veut renommer un fichier, on utilise [[:doc:systeme:mv | la commande mv]] qui prend deux arguments : |
- | * un **chemin** vers le fichier à déplacer | + | |
- | * le nouveau **chemin** du fichier. | + | - D'abord un **chemin** vers le fichier à déplacer, |
+ | - puis le nouveau **chemin** du fichier. | ||
Ce chemin peut être : | Ce chemin peut être : | ||
- soit //absolu// | - soit //absolu// | ||
- | - soit //relatif//. | + | - soit //relatif// |
- | Dans la construction des fichiers d'exemple, nous pouvons exécuter [[:doc:systeme:mv | la commande MV]] : | + | Dans la construction des fichiers d'exemple, nous pouvons exécuter [[:doc:systeme:mv | la commande mv]] : |
=== Soit avec deux chemins relatifs : === | === Soit avec deux chemins relatifs : === | ||
- | <code user>toto@jessie:~/tmp/df_tp_chemins_01/$ mv ./phaute_dorthografe ./faute_dorthographe | + | <code user>toto@machine:~/tmp/df_tp_chemins_01/$ mv ./phaute_dorthografe ./faute_dorthographe |
</code> | </code> | ||
Ligne 118: | Ligne 118: | ||
=== Soit avec un chemin relatif et un chemin absolu === | === Soit avec un chemin relatif et un chemin absolu === | ||
- | <code user>toto@jessie:~/tmp/df_tp_chemins_01/$ mv ./notes_temporaires /tmp/notes_temporaires.txt | + | <code user>toto@machine:~/tmp/df_tp_chemins_01/$ mv ./notes_temporaires /tmp/notes_temporaires.txt |
</code> | </code> | ||
qui signifie : | qui signifie : | ||
- | <code user>toto@jessie:~/tmp/df_tp_chemins_01/$ mv $PWD/./notes_temporaires /tmp/notes_temporaires.txt | + | <code user>toto@machine:~/tmp/df_tp_chemins_01/$ mv $PWD/./notes_temporaires /tmp/notes_temporaires.txt |
</code> | </code> | ||
Ligne 128: | Ligne 128: | ||
Pour enlever les fichiers du tuto : | Pour enlever les fichiers du tuto : | ||
- | |||
- | </code> | ||
<code user>cd ~/tmp</code> | <code user>cd ~/tmp</code> | ||
- | <code user>toto@jessie:~/tmp$ rm -r df_tp_chemins_01</code> | + | <code user>toto@machine:~/tmp$ rm -r df_tp_chemins_01</code> |
- | <code user>toto@jessie:~/tmp$ cd</code> | + | <code user>toto@machine:~/tmp$ cd</code> |
L'invite de commande redevient | L'invite de commande redevient | ||
- | <code>toto@jessie:~$</code> | + | <code>toto@machine:~$</code> |
Ligne 144: | Ligne 142: | ||
//Vous n'en reviendrez pas comme ça devient maintenant facile !// :-) | //Vous n'en reviendrez pas comme ça devient maintenant facile !// :-) | ||
- | //Un gros merci au //**captnfab**// qui de son site :// | + | //Un gros merci au //**captnfab**// qui nous guide et nous permet de reproduire ici le contenu de sa substantifique moëlle, ce que faire se peut.// ;-) |
- | * http://wiki.chezlefab.net/tuto_nix/tp/find_01 | + | |
- | + | ||
- | //nous guide et nous permet d'en reproduire ici la substantifique moëlle, ce que faire se peut.// ;-) | + | |