Probleme Substitution - Commande Sd (bash)
Bonjour,
J'ai un petit soucis ou gros soucis (ça dépend pour qui? :euh: ).
En fait, j'ai un tableau que je crée ListeBsc qui contient des noms.
Avec ces noms je crée des répertoires (voir code plus bas).
Autrement j'ai un fichier DefaultStructure qui contient des mots clés dont un qui m'interesse particulièrement c'est à dire #nameToReplace#
Avec ce fichier, je crée une copie que j'appelle Default et dans lequel je veux remplacer tous les mots clés #nameToReplace# par le noms contenus dans ListeBsc.
Dans cet exemple on a deux éléments Diourbel6bis et StLouis4.
Par exemple à la première étape de la boucle je veux changer:
bidule.........#nameToReplace#............finbidule (contenu de Default)
en
bidule.........Diourbel6bis............finbidule (contenu modifié de Default)
Alors que dans mon cas quand j'execute mon code et que j'ouvre mon fichier Default j'ai:
bidule.........${ListeBsc[$index]}............finbidule
Aidez moi svp.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27
| #!/bin/sh
#Tableau
ListeBsc=(Diourbel6bis StLouis4)
#Recuperation de la taille de ListeBsc
nbBsc=${#ListeBsc[*]}
index=0
while [ "$index" -lt "$nbBsc" ]
do #Création des Repertoire pour chaque BSC
sudo mkdir ${ListeBsc[$index]}
sudo cp DefaultStructure Default
sed 's/#nameToReplace#/${ListeBsc[$index]}/g' Default
mv Default ${ListeBsc[$index]}/
let "index = $index + 1"
done |