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 Prochaine révision Les deux révisions suivantes | ||
doc:programmation:shell:repertoires [22/09/2013 23:31] 127.0.0.1 modification externe |
doc:programmation:shell:repertoires [21/08/2019 07:56] smolski [Le répertoire courant, ou répertoire de travail] |
||
---|---|---|---|
Ligne 2: | Ligne 2: | ||
* Objet : Répertoire et chemins en détail | * Objet : Répertoire et chemins en détail | ||
- | * Niveau requis : DÉBUTANT | + | * Niveau requis :{{tag>débutant avisé}} |
- | * Commentaires : //Introduction pour l'utilisation des //[[: | lignes de commande]]// par l'exemple.// | + | * Commentaires : //Introduction pour l'utilisation des //[[:doc:systeme:commandes:gnu_linux | lignes de commande]]// par l'exemple.// |
- | * Débutant, à savoir : [[:doc:systeme:commandes:le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-) | + | * Débutant, à savoir : [[:doc:systeme:commandes:le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !]] :-) |
+ | * Suivi : | ||
+ | * Création par [[user>smolski]] le 08/11/2010 | ||
+ | * Testé par [[user>milou]] le 18/12/2015 | ||
+ | * Commentaires sur le forum : [[https://debian-facile.org/viewtopic.php?pid=122543#p122543 |C'est ici]]((N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !)) | ||
- | ===== TP01 - À la découverte des chemins absolus et relatifs ===== | + | Partons maintenant à la découverte des chemins absolus et relatifs... |
- | ==== Préparation du terrain ==== | + | <note important>Pour les exemples, nous allons utiliser le nom de machine jessie et le nom user toto, transposez ces noms avec ceux que vous utilisez.</note> |
+ | ===== Préparation du terrain ===== | ||
- | Dans votre ///home/user//, placez-vous dans un nouveau dossier créé pour l'occasion. Exemple : | + | Dans votre ///home/user//,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 bash> | + | |
- | $ cd | + | |
- | ~$ mkdir -p tmp/df_tp_chemins_01/ | + | |
- | ~$ cd tmp/df_tp_chemins_01/ | + | |
- | ~/tmp/df_tp_chemins_01$ | + | |
- | </code> | + | |
- | On va maintenant créer les fichiers qui nous servirons pour la | + | Exemple pratique : |
- | suite. | + | <code user>mkdir -p tmp/df_tp_chemins_01/</code> |
+ | <code user>cd tmp/df_tp_chemins_01/</code> | ||
+ | <note tip>L'invite de commande devient <code>toto@jessie:~/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/user''</note> | ||
- | Nous y créons les fichiers : | + | 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. |
- | <code bash> | + | |
- | ~/tmp/df_tp_chemins_01$ touch phaute_dorthografe | + | |
- | ~/tmp/df_tp_chemins_01$ touch notes_temporaires | + | |
- | ~/tmp/df_tp_chemins_01$ touch quisuisje | + | |
- | ~/tmp/df_tp_chemins_01$ | + | |
- | </code> | + | |
- | ==== Le répertoire courant, ou répertoire de travail ==== | + | Exemple des commandes de la création des fichiers : |
+ | <code user>touch phaute_dorthografe</code> | ||
+ | <code user>touch notes_temporaires</code> | ||
+ | <code user>touch quisuisje</code> | ||
- | C'est ce qui est indiqué juste à gauche du ''$'' du prompt ''bash''. | + | ===== Le répertoire courant, ou répertoire de travail ===== |
- | <code bash> | + | |
- | ~/tmp/df_tp_chemins_01$</code> | + | |
- | Vous pouvez l'afficher en tapant la commande ''pwd'' : | + | <note important>Nous utilisons le nom ''toto'' pour indiquer l'//user// des exemples, transposez toto avec votre propre nom user pour réaliser les exemples qui suivent.</note> |
- | <code bash> | + | |
- | ~/tmp/df_tp_chemins_01$ pwd | + | Le répertoire courant, ou répertoire de travail, c'est ce qui est indiqué juste à gauche du ''$'' du prompt ''bash'' ainsi : |
- | /home/captnfab/tmp/df_tp_chemins_01 | + | <code bash>~/tmp/df_tp_chemins_01$</code> |
- | </code> | + | |
+ | Vous pouvez l'afficher en tapant [[doc:systeme:pwd|la commande pwd]] : | ||
+ | <code user>toto@jessie:~/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]]. | ||
Le répertoire de travail est également stocké dans la variable ''$PWD'' du shell. | Le répertoire de travail est également stocké dans la variable ''$PWD'' du shell. | ||
- | <code bash> | + | <code user>toto@jessie:~/tmp/df_tp_chemins_01$ echo $PWD</code> |
- | ~/tmp/df_tp_chemins_01$ echo $PWD | + | <code config retour de la commande>/home/toto/tmp/df_tp_chemins_01</code> |
- | /home/captnfab/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 | + | Pour identifier de manière unique un fichier sur un ordinateur sous Linux, on donne ce qu'on appelle un chemin vers le fichier. |
- | donne ce qu'on appelle un chemin vers le fichier. Ce chemin peut être : | + | |
+ | Ce chemin peut être : | ||
* //absolu// | * //absolu// | ||
* ou //relatif//. | * ou //relatif//. | ||
- | === Quelques chemins particuliers === | + | ===== Quelques chemins particuliers ===== |
* ''..'' (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é | ||
Ligne 81: | Ligne 79: | ||
* ''../../'' est un chemin relatif vers le dossier parent du dossier parent. | * ''../../'' est un chemin relatif vers le dossier parent du dossier parent. | ||
Si vous êtes toujours dans ''~/tmp/df_tp_chemins_01/'', la commande | Si vous êtes toujours dans ''~/tmp/df_tp_chemins_01/'', la commande | ||
- | <code bash> | + | <code user>ls ../..</code> |
- | ls ../.. | + | |
- | </code> | + | |
doit vous lister votre //home//. | doit vous lister votre //home//. | ||
* ''./plouf/../tchac/'' est un chemin relatif vers le dossier ''$PWD/tchac'' | * ''./plouf/../tchac/'' est un chemin relatif vers le dossier ''$PWD/tchac'' | ||
Ligne 91: | Ligne 87: | ||
Exemple | Exemple | ||
- | <code bash> | + | <code user> |
ls -lh quisuisje | ls -lh quisuisje | ||
</code> | </code> | ||
Ligne 114: | Ligne 110: | ||
=== Soit avec deux chemins relatifs : === | === Soit avec deux chemins relatifs : === | ||
- | <code bash> | + | <code user>toto@jessie:~/tmp/df_tp_chemins_01/$ mv ./phaute_dorthografe ./faute_dorthographe |
- | ~/tmp/df_tp_chemins_01/$ mv ./phaute_dorthografe ./faute_dorthographe | + | |
</code> | </code> | ||
qui signifie donc : | qui signifie donc : | ||
- | <code bash> | + | <code user>mv $PWD/./phaute_dorthografe $PWD/./faute_dorthographe</code> |
- | mv $PWD/./phaute_dorthografe $PWD/./faute_dorthographe | + | |
- | </code> | + | |
=== Soit avec un chemin relatif et un chemin absolu === | === Soit avec un chemin relatif et un chemin absolu === | ||
- | <code bash> | + | <code user>toto@jessie:~/tmp/df_tp_chemins_01/$ mv ./notes_temporaires /tmp/notes_temporaires.txt |
- | ~/tmp/df_tp_chemins_01/$ mv ./notes_temporaires /tmp/notes_temporaires.txt | + | |
</code> | </code> | ||
qui signifie : | qui signifie : | ||
- | <code bash> | + | <code user>toto@jessie:~/tmp/df_tp_chemins_01/$ mv $PWD/./notes_temporaires /tmp/notes_temporaires.txt |
- | ~/tmp/df_tp_chemins_01/$ mv $PWD/./notes_temporaires /tmp/notes_temporaires.txt | + | |
</code> | </code> | ||
Ligne 137: | Ligne 128: | ||
Pour enlever les fichiers du tuto : | Pour enlever les fichiers du tuto : | ||
- | <code bash> | + | |
- | $ cd ~/tmp | + | |
- | ~/tmp/$ rm -r df_tp_chemins_01 | + | |
- | ~/tmp/$ cd | + | |
- | ~$ | + | |
</code> | </code> | ||
+ | <code user>cd ~/tmp</code> | ||
+ | <code user>toto@jessie:~/tmp$ rm -r df_tp_chemins_01</code> | ||
+ | <code user>toto@jessie:~/tmp$ cd</code> | ||
+ | L'invite de commande redevient | ||
+ | <code>toto@jessie:~$</code> | ||
Ligne 152: | Ligne 144: | ||
//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.// ;-) | + | |