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 15:32]
Hypathie [Questions sur cette base :]
doc:programmation:shell:illustration-navigation-shell [27/01/2014 10:03]
Hypathie [Questions sur cette base :] précisions sur le prompt et autres détails
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 38: Ligne 38:
 *  **Le répertoire courant** est le répertoire sur lequel on se trouve. *  **Le répertoire courant** est le répertoire sur lequel on se trouve.
 Ne pas confondre le répertoire courant avec son **home**. Ne pas confondre le répertoire courant avec son **home**.
-Ainsi il faut savoir que lorsqu'​on ouvre son terminal, le prompt indique que l'on se trouve au niveau de son home, qui peut être considéré comme un répertoire courant tant qu'on ne s'est déplacé dans l'​arborescence de fichiers :+Ainsi il faut savoir que lorsqu'​on ouvre son terminal, le prompt indique que l'on se trouve au niveau de son home, qui peut être considéré comme un répertoire courant tant qu'on ne s'​est ​pas déplacé dans l'​arborescence de fichiers :
 <​code=user>​ toto@debian:​~$ </​code>​ <​code=user>​ toto@debian:​~$ </​code>​
  
Ligne 49: Ligne 49:
 **Ainsi par exemple :**  **Ainsi par exemple :** 
  
-=> Après l'​ouverture du terminal inscrivez la commande **ls** puis appuyez sur la touche "​entrée : vous obtiendrez la liste des fichiers contenus dans votre "​home"​.+=> Après l'​ouverture du terminal inscrivez ​dans le prompt ​la commande **ls** puis appuyez sur la touche "​entrée" ​: vous obtiendrez la liste des fichiers contenus dans votre "​home"​.
  
 Puis en inscrivant: cd "​Documents"​ dans le prompt (sans les guillemets sur Documents) et appuyez sur la touche "​entrée", ​ le **répertoire courant** sera alors le répertoire "​Documents"​. Puis en inscrivant: cd "​Documents"​ dans le prompt (sans les guillemets sur Documents) et appuyez sur la touche "​entrée", ​ le **répertoire courant** sera alors le répertoire "​Documents"​.
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 pratiqueon 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. ​ ))
  
 Ainsi on peut écrire : Ainsi on peut écrire :
Ligne 75: Ligne 76:
  
 **1) Le point "​."​** représente le répertoire où l'on se trouve. \\ **1) Le point "​."​** représente le répertoire où l'on se trouve. \\
-Et deux points "​**..**"​ indiquent le répertoire parent ​à 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 du prompt quand on est remonté au dessus de son home ; et le premier slash d'​un ​chemin absolu. Il sert aussi de séparateur 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__
- <​code=user>​toto@debian:​~/​essai1$ mkdir essai2</​code>​+
  
-__3) Pour créer ​du fichier normal "​lili"​ dans /​home/​toto/​essai1/​essai2+Entrez alors : 
 + <​code=user>​ mkdir essai2</​code>​ 
 + 
 +__3) Pour créer ​le fichier normal "​lili"​ dans /​home/​toto/​essai1/​essai2
 au moyen de la commande **echo** pour y inscrire le mot « bonjour » : au moyen de la commande **echo** pour y inscrire le mot « bonjour » :
 depuis le répertoire parent « essai2 » du fichier "​lili"​ :__  depuis le répertoire parent « essai2 » du fichier "​lili"​ :__ 
 <​code=user> ​ <​code=user> ​
-echo bonjour > lili </​code>​+ cd /​home/​toto/​essai1/​essai2/</​code>​ 
 +<​note>​Remarquez le changement du prompt qui indique le répertoire actuel\\ 
 +toto@debian:​~/​essai1/​essai2$ [] </​note>​ 
 +On peut rentrer depuis le répertoire actuel "​essai2"​ qui contiendra "​lili":​ 
 +<​code>​echo bonjour > lili</​code> ​
  
-__4) Retour au niveau de home en faisant :__ 
  
-<​code=user> ​toto@debian:​~/​essai1/​essai2  ​cd ~  </​code>​+__4) Retour au niveau dans son répertoire personnel en faisant :__ 
 + 
 +<​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 162:
 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>​ 
  
-//(voir plus bas pour trouver « lili » dans l'​arborescence ​au moyen de find)//+<​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 ? ====
Ligne 183: Ligne 199:
 <​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>​
- 
  
 ==== 4) Trouvez deux façons d'​écrire le chemin relatif de la commande ci-dessus ? ==== ==== 4) Trouvez deux façons d'​écrire le chemin relatif de la commande ci-dessus ? ====
- 
- 
 <​code=>​ <​code=>​
 cd /​home/​toto/​essaie1/​essai2 cd /​home/​toto/​essaie1/​essai2
Ligne 197: Ligne 213:
  
 => =>
- 
 <​code=>​ <​code=>​
 cd ~/​essaie1/​essai2 cd ~/​essaie1/​essai2
Ligne 206: Ligne 221:
 </​code>​ </​code>​
  
-==== 5) Trouvez l'équivalent de : ==== +===== Écritures équivalentes d'une commande  ​===== 
-<code=user> +==== 1) Pour aller du home à la racine avec cd puis avec l'​usage des points ?====
-toto@debian:​~$ ​ cd essai1/​essai2/​ +
-/home/​toto/​essai1/​essai2 +
-</​code>​+
  
-=>  +<code=user>cd /</code> 
-<​code=user>​ +puis 
-toto@debian:​~$ ​ ./​essai1/​essai2+<​code=user>​pwd</code> 
-/home/​toto/​essai1/​essai2 +<file txt retour de cette commande>​/</file>
-</code>+
  
-==== 6) Trouver deux commandes équivalentes pour aller du home à la racine : ==== +<​note>​ Et le prompt ! \\ 
-Depuis mon home et avec cd et l'​usage du point ?**+toto@debian:/​$ []</​note>​
  
-<​code=user>​ +ou encore  
-toto@debian:​~$ ​cd ../.. +<​code=user>​cd ../..</code> 
-toto@debian:​/home$ pwd +<​code=user>​pwd<​/code> 
-+<file txt retour de cette commande>​/</file>
-toto@debian:​/+
-</code>+
  
-<code=user> +==== 2) Retourner dans son home depuis la racine à l'aide du tilde ? ====
-toto@debian:​~$ cd / +
-toto@debian:/​$ pwd +
-+
-toto@debian:/​$  +
-</​code>​ +
-  +
-==== 7)Retourner dans son home depuis la racine à l'aide du tilde ? ====+
  
-<​code=user>​ +<​code=user>​cd ~</​code>​
-toto@debian:/​$ ​cd ~ +
-toto@debian:​~$  +
-</​code>​+
  
-==== 8)Utiliser le point dans d'​autres commandes que cd :====+ou 
 +<code=user>cd ~</​code>​
  
-** Depuis son home : copier de quatre façons différentes "​lili"​ dans le fichier de type répertoires nommé « essai1 » ? **+<​note>​le prompt ! \\ 
 +toto@debian:​~$ []</​note>​
  
-<code=user> +==== 3) Utiliser le point avec une autre commande que cd :==== 
-toto@debian:~/​essai1/​essai2$ cp lili ../ + 
-</​code>​+** Depuis son home copier de trois façons différentes "lili" dans le fichier de type répertoires nommé « essai1 » ? **
  
 **en absolu :** **en absolu :**
Ligne 267: Ligne 268:
 cp ./​essai1/​essai2/​lili ./​essai1/​lili cp ./​essai1/​essai2/​lili ./​essai1/​lili
 </​code>​ </​code>​
 +
  
  
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