logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

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 → ODT PDF Export

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é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:illustration-navigation-shell [26/01/2014 16:49]
Hypathie [Introduction]
doc:programmation:shell:illustration-navigation-shell [28/01/2014 06:00]
Hypathie [Énoncé des questions ci-dessous]
Ligne 1: Ligne 1:
 ====== chemin relatif et absolu illustrés par quelques commandes ====== ====== chemin relatif et absolu illustrés par quelques commandes ======
  
-  * Objet : exercices sur chemin relatif et absolu ​FIXME +  * Objet : exercices sur chemin relatif et absolu  
-  * Niveau requis : FIXME {{tag>​débutants}} +  * Niveau requis : {{tag>​débutants}} 
-  * Commentaires : //les bases du bash, rappels et exercices // FIXME+  * Commentaires : //les bases du bash, rappels et exercices // 
   * 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 : {{tag>en-chantier}} - FIXME Pour choisir, voir les autres Tags possibles dans [[:​atelier:#​tags|l'​Atelier]].+  * Suivi : {{tag>à-placer}} - Pour choisir, voir les autres Tags possibles dans [[:​atelier:#​tags|l'​Atelier]].
     * Création par **Hypathie** 24/01/2014     * Création par **Hypathie** 24/01/2014
     * Testé par <...> le <...> FIXME     * Testé par <...> le <...> FIXME
-  * Commentaires sur le forum : [[url | Lien vers le forum concernant ce tuto]] ((N'​hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !)) FIXME+  * Commentaires sur le forum : [[http://​forum.debian-facile.org/​viewtopic.php?​id=8313| Lien vers le forum concernant ce tuto]] ((N'​hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !))
  
 === Nota === === Nota ===
Ligne 30: Ligne 30:
 sur système droits:​fichiers : [[doc:​systeme:​droits-unix-bis?&#​modification-des-droits]] sur système droits:​fichiers : [[doc:​systeme:​droits-unix-bis?&#​modification-des-droits]]
  
-sur la commande cd : [[doc:​programmation:​shell:​cd?​s[/​url][]=chemin&​s[]=relatif]]+sur la commande cd : [[doc:​programmation:​shell:​cd| doc:​programmation shell:cd]]
  
 sur système:​commandes:​gnu : [[doc:​systeme:​commandes:​gnu_linux]] sur système:​commandes:​gnu : [[doc:​systeme:​commandes:​gnu_linux]]
Ligne 57: Ligne 57:
 *   **Le tilde : ~/** est une abréviation qui représente **/​home/​utilisateur/​** *   **Le tilde : ~/** est une abréviation qui représente **/​home/​utilisateur/​**
  
-Il permet donc d'​écrire dans les commandes le chemin relatif d'un fichier de type-répertoire ou d'un fichier-ordinaire ((Cette distinction parce que sous Linux tout est répertoire, mais en pratique, on peut dire fichier de type-répertoire pour désigner les fichiers qui peuvent contenir d'​autres fichiers ; tandis que fichier-ordinaire renvoie aux fichiers dans lesquels on peut écrire du texte, par exemple. +Il permet donc d'​écrire dans les commandes le chemin relatif d'un fichier de type-répertoire ou d'un fichier-ordinaire ((Cette distinction parce que sous Linux tout est "​fichier"​, mais en pratique, on peut dire fichier de type-répertoire pour désigner les fichiers qui peuvent contenir d'​autres fichiers ; tandis que fichier-ordinaire renvoie aux fichiers dans lesquels on peut écrire du texte, par exemple. 
-Pour une explication très approfondie de cette différence,​ voir [[http://​www.linux-france.org/​article/​dalox/​unix02.htm.]]+Pour une explication très approfondie de cette différence,​ voir [[http://​www.linux-france.org/​article/​dalox/​unix02.htm]] 
 Et bien sûr en tapant "​fichier"​ dans la fenêtre rechercher de la documentation de Debian-facile vous aurez une idée sur les différentes sortes de texte que l'on peut inscrire sur un fichier. ​ )) Et bien sûr en tapant "​fichier"​ dans la fenêtre rechercher de la documentation de Debian-facile vous aurez une idée sur les différentes sortes de texte que l'on peut inscrire sur un fichier. ​ ))
  
Ligne 64: Ligne 65:
  
 en absolu (pour un utilisateur "​toto"​) en absolu (pour un utilisateur "​toto"​)
-<​code=user>​ cd /home/toto/Document</​code>​+<​code=user>​ cd /home/toto/Documents</​code>​
 ou ou
 <​code=user>​ cd ~/Documents </​code>​ <​code=user>​ cd ~/Documents </​code>​
Ligne 77: Ligne 78:
 Et deux points "​**..**"​ indiquent le répertoire parent de celui dans lequel on se trouve. ​ Et deux points "​**..**"​ indiquent le répertoire parent de celui dans lequel on se trouve. ​
  
-**2) Le slash "/"​** représente la racine ​(plus précisément le slash représente la racine dans le prompt, quand on est remonté au dessus de son home ; et il représente ​aussi la racine pour le premier slash d'​un ​chemin absolu. Les autres sont des séparateurs des fichiers ​de type répertoire)((C'​est donc un caractère qu'il est interdit d'​utiliser pour nommer les documents créés.))+**2) Le slash "/"​** représente la racine ​mais il sert aussi à séparer les composants ​d'​un ​nom de fichier (comme dans /​home/​toto/​Documents/​fiche-anglais)((C'​est donc un caractère qu'il est interdit d'​utiliser pour nommer les documents créés.))
  
 **Ainsi par exemple:** **Ainsi par exemple:**
  
-**cd ..**  : permet de retourner ​à son home (depuis le répertoire "​Documents"​ par exemple **les deux points** signifient remonte au répertoire parent de document)+**cd ..**  : permet de retourner ​au répertoire parent depuis le répertoire courant ou actuel ​(depuis le répertoire "​Documents"​ par exemple **les deux points** signifient remonte au répertoire parent de document)
  
 **cd .**   : permet de rester dans le répertoire courant ( **le point** indiquera le répertoire où l'on se trouve) **cd .**   : permet de rester dans le répertoire courant ( **le point** indiquera le répertoire où l'on se trouve)
  
-**cd ~**   : permet de retourner (depuis n'​importe où) à son home car le tilde ~ représente son home+**cd **    : permet de retourner (depuis n'​importe où)au niveau de son répertoire personnel (sous debian). 
 + 
 +**cd ~**   : permet ​de même de retourner (depuis n'​importe où)au niveau de son répertoire personnel 
 +             ​( ​car le tilde ~ représente son répertoire personnel)
  
 **cd /**   : permet de retourner à la racine. **cd /**   : permet de retourner à la racine.
  
-=> **Entrainez-vous en entrant pwd, après avoir rentré les trois utilisations de cd indiquées ci-dessus. Puis en les entrant après avoir avancé jusqu'​où vous le souhaitez dans l'​arborescence des fichiers !** 
  
 ===== Énoncé des questions ci-dessous ===== ===== Énoncé des questions ci-dessous =====
- +====Soit le répertoire personnel d'un utilisateur ​"​toto"​ (également appelé "​home"​ de "toto")====
-====Soit le répertoire personnel ​« home » d'un utilisateur ​nommé ​ « toto » ====+
  
 le prompt à l'​ouverture du terminal est alors :  le prompt à l'​ouverture du terminal est alors : 
 <​code=user>​ toto@debian:​~$ </​code>​ <​code=user>​ toto@debian:​~$ </​code>​
-Et la réponse du prompt ​à la commande **pwd** ​est : +<​code=user>​ toto@debian:​~$ pwd </​code>​ 
-<code=user>​/home/toto </code>+ 
 +<file txt retour de la commande pwd>/​home/​toto </​file>​ 
 + 
 +<​note>​ vocabulaire : Ce n'est pas le prompt ​qui répond, il ne sert que d'​indicateur. C'est le programme de la commande ​qui retourne le texte affiché.\\  
 +=> **Entrainez-vous en entrant ​pwd, après avoir rentré chacune les trois utilisations de cd indiquées ci-dessus. Puis en les entrant après avoir avancé jusqu'​où vous le souhaitez dans l'​arborescence des fichiers !** 
 +</note 
  
 ====Soit la création dans ce répertoire personnel d'un fichier de type répertoire nommé essai1==== ====Soit la création dans ce répertoire personnel d'un fichier de type répertoire nommé essai1====
-<​code=user>​toto@debian:​~$ ​mkdir essai1</​code>​+<​code=user>​ mkdir essai1</​code>​
  
 ==== Soit la création d'un autre fichier de type répertoire nommé « essai2 » ==== ==== Soit la création d'un autre fichier de type répertoire nommé « essai2 » ====
Ligne 109: Ligne 117:
 <​code=user>​cd essai1</​code>​ <​code=user>​cd essai1</​code>​
  
-remarquer : le prompt est alors :+<​note>​À ​remarquer : le prompt est alors\\ 
 +toto@debian:~/essai1$ []</​note>​
  
-<​code=user>​toto@debian:~/​essai1$ ​ </​code>​+après **pwd** le lieu indiqué est bien 
  
-après **pwd** le lieu indiqué est bien : \\<code>/​home/​toto/​essai1</​code>+<file txt retour de la commande>/​home/​toto/​essai1</​file>
  
-__2) Pour créer un fichier de type répertoire « essai2 ​»__ +__2) Pour créer un fichier de type répertoire « essai2 ​» depuis son répertoire parent ("essai1")__
- <​code=user>​toto@debian:​~/​essai1$ mkdir essai2</​code>​+
  
-__3) Pour créer ​du fichier normal "​lili"​ dans /​home/​toto/​essai1/​essai2 +Entrez alors : 
-au moyen de la commande **echo** pour y inscrire le mot « bonjour » : + <​code=user>​ mkdir essai2</​code>​ 
-depuis le répertoire parent « essai2 » du fichier "​lili"​ :__  +<​note>​ Depuis "​essai1"​ on aurait pu créer "​essai2"​ en faisant\\ 
-<​code=user>​  +<code user> cd /​home/​toto/​essai1/​essai2</​code>​ 
-echo bonjour > lili </​code>​+</​note>​ 
 + 
 +__3) Pour créer ​le fichier normal "​lili"​ dans le fichier de type répertoire "​essai2"​__\\ 
 +(reconnu aussi sous l'​écriture "/​home/​toto/​essai1/​essai2" ou "​~/​essai1/​essai2"​) 
 +Utilisons ​la commande **echo** pour y inscrire le mot « bonjour » comme ceci : 
 + 
 +depuis le répertoire parent « essai1 » du fichier "​lili"​ on peut faire :  
 +<​code=user>​cd ​essai2/</​code>​ 
 + 
 +depuis le répertoire parent « essai1 ​» du fichier "​lili" ​on aurait pu faire aussi 
 +<​code=user>cd /​home/​toto/​essai1/​essai2/</​code
 + 
 +<​note>​Remarquez le changement du prompt qui indique le répertoire actuel comme étant "​essai2"​\\ 
 +toto@debian:​~/​essai1/​essai2$ [] </​note>​ 
 + 
 +Pour créer le fichier ordinaire "​lili",​ dans le répertoire "​essai2"​ : 
 +<​code>​echo bonjour > lili</​code>  
 + 
 +<​note>​mais cette fois\\ echo bonjour /​home/​toto/​essai1/​essai2/​lili\\ 
 +ne fonctionnerait pas ! \\ 
 +Si cette différence entre les commandes cp et écho vous questionne,​ 
 +vous pouvez comparer man cp et man echo.</​note>
  
-__4) Retour au niveau ​de home en faisant :__+__4) Retour au niveau ​dans son répertoire personnel ​en faisant :__
  
-<​code=user> ​toto@debian:​~/​essai1/​essai2  ​cd ~  </​code>​+<​code=user>​cd ~  </​code>​
  
 ====À la place de ce long énoncé==== ====À la place de ce long énoncé====
  
-On aurait pu créer en une fois les deux répertoires "​essai1"​ et "​essai2"​ ainsi +On aurait pu créer en une seule commande ​les deux répertoires "​essai1"​ et "​essai2"​ ainsi 
-<​code=user>​hypathie@debian:​~$ ​mkdir -p /home/hypathie/​essai1/​essai2</​code>​+<​code=user>​mkdir -p /home/toto/​essai1/​essai2</​code>​
  
-puis pour créer "​lili"​+puis pour créer ​le fichier ordinaire ​"​lili"​
  
-<​code=user>​hypathie@debian:​~$ ​echo "Bonjour" > /home/hypathie/​essai1/​essai2/​lili</​code>​+<​code=user>​ echo "bonjour" > /home/toto/​essai1/​essai2/​lili</​code>​
  
  
 ===== Questions sur cette base : ===== ===== Questions sur cette base : =====
  
-//Afin d'​assimiler ​la notion ​de chemin relatif et absolu, je vous propose d'​essayer de répondre de vous-mêmes aux questions avant d'​aller regarder la réponse.//+//Afin d'​assimiler ​les notions ​de chemin relatif et absolu, je vous propose d'​essayer de répondre de vous-mêmes aux questions avant d'​aller regarder la réponse.//
  
 ====1) Reformulez l'​énoncé au moyen du chemin relatif==== ====1) Reformulez l'​énoncé au moyen du chemin relatif====
Ligne 146: Ligne 175:
 En faisant :  En faisant : 
  
-<​code=user>​hypathie@debian:​~$ ​mkdir -p ~/​essai1/​essai2</​code>​+<​code=user>​mkdir -p ~/​essai1/​essai2</​code>​
  
 puis puis
  
-<​code=user>​hypathie@debian:​~$ ​echo "​Bonjour"​ > ~/​essai1/​essai2/​lili</​code>​+<​code=user>​echo "​Bonjour"​ > ~/​essai1/​essai2/​lili</​code>​
  
-====2) Comment aller directement (sans une succession de cd, puis de cd..) de son home à "​lili",​ puis du répertoire ​parent de "​lili"​ à son home ?====+====2) Comment aller directement (sans une succession de cd, puis de cd..) de son répertoire personnel ​à "​lili",​ puis retourner ​du répertoire ​contenant ​"​lili"​ à son répertoire personnel ​?====
  
 __a) si on connaît où est "​lili"​ : utiliser l'​autocomplétion (touche tabulation) :__ __a) si on connaît où est "​lili"​ : utiliser l'​autocomplétion (touche tabulation) :__
-<​code=user>​ + 
-toto@debian:​~$ ​cd essai1/​essai2/​ +<​code=user>​cd essai1/​essai2/​</​code>​ 
-toto@debian:​~$ cd essai1/​essai2$ ​ + 
-</code>+<​note>​ le prompt est maintenant: 
 +toto@debian:​~/essai1/​essai2$ ​[]</note> 
  
 __b) on a malheureusement oublié dans quel répertoire est rangé "​lili"​ :__ __b) on a malheureusement oublié dans quel répertoire est rangé "​lili"​ :__
    
 *** __astuce pour que soit  indiqué le chemin absolu d'un fichier:​__** *** __astuce pour que soit  indiqué le chemin absolu d'un fichier:​__**
-<​note>​depuis n'​importe où (car update ne cherche pas au sein de l'​arborescence ​ 
-mais dans une base de données) : 
-<​code=root>​ :~$ updatedb db && locate essai2 
-/​home/​toto/​essai1/​essai2 
-/​home/​toto/​essai1/​essai2</​code>​ </​note>​ 
  
 +<​note>​depuis n'​importe où (car le programme "​locate"​ n'​utilise pas, pour ses recherches, l'​arborescence du système de fichiers, ​
 +mais une base de données, mise à jour régulièrement par le programme "​updatedb"​) :
  
-**Puis du répertoire ​parent de "​lili"​ à mon home ?**+<code root> updatedb && locate lili</​code>​ 
 + 
 +<file txt retour de la commande>/​home/​toto/​essai1/​essai2/​lili</​file>​ 
 +</​note>​ 
 + 
 + 
 +**Puis du répertoire ​contenant ​"​lili"​ à mon répertoire personnel ​?**
 <​code=user> ​ <​code=user> ​
-/home/toto/essai1/​essai2/​lili +toto@debian:~$ cd essai1/​essai2/​ 
-toto@debian:​~/​essai1/​essai2$ ​ cd ~ </​code>​+toto@debian:​~/​essai1/​essai2$ cd ~ </​code>​
  
 ==== 3) Corriger la faute d'​orthographe sur "​bonjour"​ en écrasant "​lili",​ depuis son home ? ==== ==== 3) Corriger la faute d'​orthographe sur "​bonjour"​ en écrasant "​lili",​ depuis son home ? ====
 Pour ce faire utiliser la commande echo.  Pour ce faire utiliser la commande echo. 
 <​code>​ echo "texte à écrire dans un fichier"​ > /​chemin-absolu-du-fichier-à-créer/​nom-du-fichier-créé</​code>​ <​code>​ echo "texte à écrire dans un fichier"​ > /​chemin-absolu-du-fichier-à-créer/​nom-du-fichier-créé</​code>​
 +
 +<​note>​ On est au niveau de son répertoire personnel\\
 +le prompt est \\
 +toto@debian:​~$ []</​note>​
  
 <​code=user>​ <​code=user>​
-toto@debian:​~$ ​echo Bonjour > ~/​essai1/​essai2/​lili+echo Bonjour > ~/​essai1/​essai2/​lili
 </​code>​ </​code>​
  
Ligne 200: Ligne 238:
 ==== 1) Pour aller du home à la racine avec cd puis avec l'​usage des points ?==== ==== 1) Pour aller du home à la racine avec cd puis avec l'​usage des points ?====
  
-<​code=user>​ +<​code=user>​cd /</code> 
-toto@debian:​~$ ​cd / +puis 
-toto@debian:​/pwd +<​code=user>​pwd</​code>​ 
-+<file txt retour de cette commande>/<​/file> 
-toto@debian:/​$  + 
-</​code>​+<​note>​ Et le prompt ! \\ 
 +toto@debian:/​$ ​[]</​note>​ 
 + 
 +ou encore ​ 
 +<​code=user>​cd ../..</code
 +<​code=user>​pwd</​code>​ 
 +<file txt retour de cette commande>/</​file>
  
-<​code=user>​ 
-toto@debian:​~$ cd ../.. 
-toto@debian:/​home$ pwd 
-/ 
-toto@debian:/​$ 
-</​code>​ 
-  
 ==== 2) Retourner dans son home depuis la racine à l'aide du tilde ? ==== ==== 2) Retourner dans son home depuis la racine à l'aide du tilde ? ====
  
-<​code=user>​ +<​code=user>​cd ~</code> 
-toto@debian:​/cd ~ + 
-toto@debian:​~$ ​ +ou 
-</code>+<​code=user>​cd ~</​code>​ 
 + 
 +<​note>​le prompt ! \\ 
 +toto@debian:​~$ ​[]</note>
  
-==== 3) Utiliser le point une autre commande que cd :====+==== 3) Utiliser le point avec une autre commande que cd :====
  
 ** Depuis son home : copier de trois façons différentes "​lili"​ dans le fichier de type répertoires nommé « essai1 » ? ** ** Depuis son home : copier de trois façons différentes "​lili"​ dans le fichier de type répertoires nommé « essai1 » ? **
doc/programmation/shell/illustration-navigation-shell.txt · Dernière modification: 03/07/2014 00:06 (modification externe)

Pied de page des forums

Propulsé par FluxBB