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 →
Ceci est une ancienne révision du document !
- Pour choisir, voir les autres Tags possibles dans l'Atelier.
Contributeurs, les sont là pour vous aider, supprimez-les une fois le problème corrigé ou le champ rempli !
S'exercer sur quelques commandes en vue d'assimiler les notions de chemin relatif et de chemin absolu.
Ou se servir de différentes expressions syntaxiques pour écrire des commandes équivalentes.
sur répertoires et chemins : chemins relatif
sur chemin relatif et absolu : http://wiki.debian-facile.org/doc:programmation:shell:repertoires
sur système droits:fichiers :http://wiki.debian-facile.org/doc:systeme:droits-unix-bis?&#modification-des-droits
sur système:commandes:gnu : http://wiki.debian-facile.org/doc:systeme:commandes:gnu_linux
sur la commande cd : http://wiki.debian-facile.org/doc:programmation:shell:cd?s[/url][]=chemin&s[]=relatif
sur le shell : http://wiki.debian-facile.org/doc:programmation:shell:shell
Le répertoire courant est le répertoire sur lequel on se trouve. Ne pas confondre le répertoire 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 :
toto@debian:~$
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 2)
Ainsi on peut écrire :
en absolu (pour un utilisateur “toto”)
cd /home/toto/Document
ou
cd ~/Documents
~$ echo ~ /home/utilisateur
Pour le tilde voir http://wiki.debian-facile.org/doc:programmation:shell:tilde
Ainsi par exemple :
en entrant la commande ls, on peut observer le contenu de son home. On peut y trouver par exemple le répertoire “Documents” ;
Et en faisant cd “Documents” le répertoire courant sera alors le répertoire “Documents”.
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.
2) Le slash “/“ représente la racine.
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 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 à 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 ! :)
le prompt à l'ouverture du terminal est alors :
toto@debian:~$
Et la réponse du prompt à la commande pwd est :
/home/toto
toto@debian:~$ mkdir essai1
après les commandes suivantes :
1) pour avancer dans l'arborescence et créer « essai2 » dans « essai1 »
cd essai1
A remarquer : le prompt est alors :
toto@debian:~/essai1$
après pwd le lieu indiqué est bien : \\
/home/toto/essai1
2) Pour créer un fichier de type répertoire « essai2 »
toto@debian:~/essai1$ mkdir essai2
3) Pour créer du fichier normal “lili” dans /home/toto/essai1/essai2 au moyen de la commande echo pour y inscrire le mot « bonjour » : depuis le répertoire parent « essai2 » du fichier “lili” :
echo bonjour > lili
4) Retour au niveau de home en faisant :
toto@debian:~/essai1/essai2 cd ~
On aurait pu créer en une fois les deux répertoires “essai1” et “essai2” ainsi
hypathie@debian:~$ mkdir -p /home/hypathie/essai1/essai2
puis pour créer “lili”
hypathie@debian:~$ echo "Bonjour" > /home/hypathie/essai1/essai2/lili
⇒ ou aussi en tenant compte de ce qu'on sait sur l'usage du chemin relatif
En faisant :
hypathie@debian:~$ mkdir -p ~/essai1/essai2
puis
hypathie@debian:~$ echo "Bonjour" > ~/essai1/essai2/lili
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.
1) Comment se passer d'une succession de cd (dans un sens) ou de cd .. (dans l'autre sens) ?
Pour aller directement du répertoire parent de “lili” à mon home :
/home/toto/essai1/essai2/lili toto@debian:~/essai1/essai2$ cd ~
Puis du répertoire parent de “lili” à mon home ?
a) si on connaît où est “lili” : utiliser l'autocomplétion (touche tabulation) :
toto@debian:~$ cd essai1/essai2/ toto@debian:~$ cd essai1/essai2$
b) on a malheureusement oublié dans quel répertoire est rangé “lili” :
* astuce :
:~$ updatedb db && locate essai2 /home/toto/essai1/essai2 /home/toto/essai1/essai2
(voir plus bas pour trouver « lili » dans l'arborescence au moyen de find)
2) Corriger la faute d'orthographe sur “bonjour” en écrasant “lili”, par un dossier “lili” dans lequel il est écrit cette fois “Bonjour”, et cela non pas depuis le répertoire parent, mais depuis son home ?
toto@debian:~$ echo Bonjour > ~/essai1/essai2/lili
Autre symbole lié à la notion de relativité des chemins : le point ”.” Rappel : le point représente le répertoire où l'on se trouve :
Donner les commandes équivalentes, en chemin relatif et absolu :
Depuis son home, aller avec cd au niveau du répertoire parent de “lili” qui est
/home/toto/essaie1/essai2
ou
./essaie1/essai2
3)Quel est l'équivalent de :
toto@debian:~$ cd essai1/essai2/ /home/toto/essai1/essai2
⇒
toto@debian:~$ ./essai1/essai2/ /home/toto/essai1/essai2
4) Trouver deux commandes équivalentes pour aller du home à la racine : Depuis mon home et avec cd et l'usage du point ?
toto@debian:~$ cd .. toto@debian:/home$ pwd /home toto@debian:/home$
Avec cd sans le point ?
] toto@debian:~$ cd / toto@debian:/$ pwd /
3)Retourner dans son home depuis la racine à l'aide du tilde ?
toto@debian:/$ cd ~ toto@debian:~$
4)Utiliser le point dans d'autres commandes que cd :
ainsi :
:/$ cd /home/toto/essai1/essai2 ou :/$ cd ~/essai1/essai2
Ce qui donne :
~/essai1/essai2$
équivalent de :
:~/essai1/essai2$ pwd /home/toto/essai1/essai2
6) “lili” est toujours là : /home/toto/essai1/essai2 copier “lili” dans le fichier de type répertoires nommé « essai1 » ?
toto@debian:~/essai1/essai2$ cp lili ../
Après avoir effacé la copie de “lili” placée dans essai1 : Comment depuis son home copier “lili” dans essai1 de trois façons différentes ?
en absolu :
cp /home/toto/essai1/essai2/lili /home/toto/essai1/lili
en relatif (depuis n'importe où) :
cp ~/essai1/essai2/lili ~/essai1/lili
en relatif (depuis son répertoire personnel) :
cp ./essai1/essai2/lili ./essai1/lili