Récupérer le chemin d'exécution de mon script
Résolu
Bonjour,
J'ai besoin de récupérer le chemin d'exécution de mon script bash
J'ai fait ceci mais ça marche pas
il devrai comprendre que le chemin d'exécution est : /home/serveur/Domotique/ordres/mysql ??????
mysql.sh
Merci.
J'ai besoin de récupérer le chemin d'exécution de mon script bash
J'ai fait ceci mais ça marche pas
pwd $chemin_script_bash source $chemin_script_bash/mysql.sh
il devrai comprendre que le chemin d'exécution est : /home/serveur/Domotique/ordres/mysql ??????
mysql.sh
#------- CONNECTION A LA BASSE DE DONNES AVEC BASH ------------- hote_db="localhost" nom_bd="domotique" login_db="xxxxxx" pass_bd="xxxxxx"
Merci.
6 réponses
-
Bonjour,
Du coup j'ai fait comme ceci mais il met plus de temps à réagir avec une fonction 5 secondes de plus.chemin_script_bash(){ pwd } source $(chemin_script_bash)/mysql.sh
Avec une variable c'est pas possible ?
Merci. -
Contributeurhello
utiliser la variable PWDsource ${PWD}/mysql.sh -
Bonjour,
Merci c'est beaucoup plus rapide et moins de ligne de codesource ${PWD}/mysql.sh
Merci. -
Bonjour,
J'ai ajouté mon chemin dans le PATHserveur@debian:~$ echo $PATH /usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games:/home/serveur/scripts:/home/serveur/Domotique/ordres serveur@debian:~$
je me rend compte d'un problème
source ${PWD}/mysql.sh
me renvoie le chemin depuis lequel on exécute le script, pas celui où se trouve le script ???
J'ai essayé avecpath=$(dirname $0)
etpath=$(pwd $0)
Mais il me renvoi le chemin avec le nom du fichier comme ceci/home/serveur/Domotique/ordres/e1-on
Ors il faudrait qu'il puisse me renvoyer le chemin où se trouve le script comme ceci/home/serveur/Domotique/ordres
Comment puis je faire ?
Merci -
Contributeur
p=$(which mysql.sh) ; echo ${p%/*}oudirname $(which mysql.sh)
-
Bonjour,
Merci ça marche impeccable.chemin_bash=$(which mysql.sh) ; # renvoyer le chemin où se trouve le script source ${chemin_bash%/*}/mysql.sh # Insertion du fichier de connexion a la basse de donnés mysql
Merci.