Je veux définir une variable d'environnement par rapport à l'emplacement d'un script. Je peux facilement le trouver et le définir pour la durée du script (test.sh):
#!/bin/bash
export MY_VARIABLE=$(dirname $0)
echo MY_VARIABLE is : $MY_VARIABLE
Appel:
./test.sh
Sortie:
MY_VARIABLE is : .
Si je veux utiliser la variable dans d'autres scripts, je dois la définir avec la commande source. Cela ne fonctionne bien sûr pas car je n’appelle plus le script test.sh, mais la commande source.
source test.sh
Sortie:
dirname: illegal option -- b
usage: dirname path
MY_VARIABLE is :
Existe-t-il un moyen de définir une variable d'environnement dans un script qui puisse ensuite être utilisée avec la commande source?
command-line
bash
Sacha Guyer
la source
la source
Réponses:
test2.sh:
Appel:
Sortie:
Appel:
Sortie:
Merci @webmark et @GordonDavisson.
la source