Bonjour,
je lis une variable d'environnement dans un fichier et quand je l'utilise dans un shell, elle n'est pas évaluée.
Voici mon bout de code :
contenu de mon_fichier.txt :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 #!/bin/sh echo " --> ma venv=${MA_VAR} mon_fic=`cat /home/sp/mon_fichier.txt | grep "^FIC" ` chemin=`echo $mon_fic | cut -d ";" -f2` fic=`echo $mon_fic | cut -d ";" -f3` ls $chemin/$fic
l'exécution :
Code : Sélectionner tout - Visualiser dans une fenêtre à part FIC;/home/sp/${MA_VAR}/rep1/rep2;fichier.txt
Je ne comprend pas pourquoi la venv MA_VAR n'est pas remplacée lors du "ls"
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 export MA_VAR="mon_rep" ./mon_code.sh --> ma venv=mon_rep ls: cannot access /home/sp/${MA_VAR}/rep1/rep2/fichier.txt
Merci de vos réponses
Partager