#1 Le 03/07/2006, à 13:37
- nolan
[Résolu] Récupérer le chemin en bash
Bonjour,
Je suis complètement débutant dans le dévelopement . mais j'aimerais faire un petit script.
Je veux récupérer dans une variable le path courant
Par exemple je me trouve dans
/toto/titi/lulu/
Comment je dis a ma variable de prendre /toto/titi/lulu/ pour obtenir
echo $vpath
/toto/titi/lulu/
en fait ce que je veux faire c'est
mkdir $vpath momo
je ne suis pas sure d'avoir été claire.
Mais merci par avance.
Dernière modification par nolan (Le 03/07/2006, à 21:17)
N'oubliez pas d'ajouter résolu au titre quand le sujet l'est.
Sous linux on s'en sort toujours sans reformater
Hors ligne
#2 Le 03/07/2006, à 14:06
- dylhoxic
Re : [Résolu] Récupérer le chemin en bash
euh si j'ai bien compris la commande "pwd" est ce que tu recherches...
Kubuntu++
Hors ligne
#3 Le 03/07/2006, à 15:21
- kaworu
Re : [Résolu] Récupérer le chemin en bash
ou plus simple, la variable d'environement $PATH.
donc $(echo $PATH) et $(pwd) te donneront le chemin ^___^
EDIT :
c'est la variable $PWD et non pas $PATH
Dernière modification par kaworu (Le 03/07/2006, à 16:47)
"There are in order of increasing severity: lies, damn lies, statistics, and computer benchmarks."
Hors ligne
#4 Le 03/07/2006, à 15:41
- dylhoxic
Re : [Résolu] Récupérer le chemin en bash
Ah bah non, la variable PATH est la variable qui contient le chemin d'accès au binaires, ex :
echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/X11R6/bin
alors que pwd :
pwd
/home/dylhoxic
Kubuntu++
Hors ligne
#5 Le 03/07/2006, à 16:46
- kaworu
Re : [Résolu] Récupérer le chemin en bash
Honte sur moi, j'étais distrait ^_____^
La variable dont je parle est $PWD et non pas $PATH
milles excuses ^____^
Dernière modification par kaworu (Le 03/07/2006, à 16:47)
"There are in order of increasing severity: lies, damn lies, statistics, and computer benchmarks."
Hors ligne
#6 Le 03/07/2006, à 18:11
- nolan
Re : [Résolu] Récupérer le chemin en bash
Merci pour vos réponces
J'utilisais bien la commande pwd, mais je n'arrivais pas à récupérer le résultat j'ai fini par trouvé comment faire entre temps vos réponces sont tombés.
vpath=`pwd` mon erreur était d'utiliser des cotes au lieu d'accent grave.
echo $vpath
revient bien à $PWD
Dernière modification par nolan (Le 03/07/2006, à 18:13)
N'oubliez pas d'ajouter résolu au titre quand le sujet l'est.
Sous linux on s'en sort toujours sans reformater
Hors ligne
#7 Le 03/07/2006, à 22:21
- lunique
Re : [Résolu] Récupérer le chemin en bash
Bonjour.
Quitte a faire, autant utiliser
$(commande)
plutot que
`commande`
notamment parce que sa permet de les imbriquer et que c'est tout de meme plus lisible.
Ensuite, je te consellerai plutot de passer par $(pwd) plutot que par $PWD car a premiere vue,
mkdir $(pwd)/toto
est plus clair que
mkdir $(echo $PWD)/toto
Voila ma petite contribution ^^
Hors ligne
#8 Le 04/07/2006, à 06:21
- nolan
Re : [Résolu] Récupérer le chemin en bash
Merci pour ces précisions
N'oubliez pas d'ajouter résolu au titre quand le sujet l'est.
Sous linux on s'en sort toujours sans reformater
Hors ligne
#9 Le 04/07/2006, à 09:09
- batteuryo
Re : [Résolu] Récupérer le chemin en bash
vpath=`pwd` mon erreur était d'utiliser des cotes au lieu d'accent grave.
echo $vpath
revient bien à $PWD
En effet, les backquote --> ` lorsqu'elles entourent une commande, permettent de récuperer son résultat.
Je me demande dans quel etat j'ère ... ^^
Hors ligne
#10 Le 04/07/2006, à 17:06
- kaworu
Re : [Résolu] Récupérer le chemin en bash
Salut !
mkdir $PWD/repertoire
marche aussi et est bien plus propre que de faire un sous-shell alors que l'on a une variable à dispo pour ça ^____^
C'est vrai que $(commande) est "plus recommandé" que les backquote `commande`.
On peut cependant aussi imbriquer avec les backquote
echo `echo \`echo foo\``
Il suffit d'échapper les backquote, ce qui donne un truc illisible certe, mais qui est possible (juste pour info).
Enjoy !
"There are in order of increasing severity: lies, damn lies, statistics, and computer benchmarks."
Hors ligne