J'essaye de faire quelque chose mais je pense que je m'y prend mal.
J'ai un fichier squelette avec des variables dedans que je voudrais
mettre =E0 jour par rapport =E0 mon script principal.
Script principal :
for FIC in `ls toto*.txt`
do
INPUT=3D"E:\\${FIC}"
while read -r MAQUETTE
do
echo "$MAQUETTE"
done < Fichier_Maquette
done
Fichier_Maquette:
echo ${INPUT}
Le r=E9sultat me donne ${INPUT} alors que j'attend E:\\toto1.txt
M=EAme en mettant le INPUT=3D dans le while j'ai pareil.
Dois-je mettre peut-=EAtre faire un sed dans mon while ou autre chose??
Aussi, chez moi (bash), ton script donne « echo ${INPUT} » et non pas « ${INPUT} ».
-- LL
Stephane CHAZELAS
2009-10-20, 00:09(-07), Ozzii:
Bonjour,
J'essaye de faire quelque chose mais je pense que je m'y prend mal. J'ai un fichier squelette avec des variables dedans que je voudrais mettre à jour par rapport à mon script principal.
Script principal : for FIC in `ls toto*.txt` do INPUT="E:${FIC}" while read -r MAQUETTE do echo "$MAQUETTE" done < Fichier_Maquette done
Fichier_Maquette: echo ${INPUT}
Le résultat me donne ${INPUT} alors que j'attend E:toto1.txt Même en mettant le INPUT= dans le while j'ai pareil.
Dois-je mettre peut-être faire un sed dans mon while ou autre chose??
Toute aide est la bien venue. Merci par avance.
for FIC in toto*.txt; do INPUT=E:$FIC eval "cat << EOF $(cat Fichier_Maquette) EOF " done
-- Stéphane
2009-10-20, 00:09(-07), Ozzii:
Bonjour,
J'essaye de faire quelque chose mais je pense que je m'y prend mal.
J'ai un fichier squelette avec des variables dedans que je voudrais
mettre à jour par rapport à mon script principal.
Script principal :
for FIC in `ls toto*.txt`
do
INPUT="E:\${FIC}"
while read -r MAQUETTE
do
echo "$MAQUETTE"
done < Fichier_Maquette
done
Fichier_Maquette:
echo ${INPUT}
Le résultat me donne ${INPUT} alors que j'attend E:\toto1.txt
Même en mettant le INPUT= dans le while j'ai pareil.
Dois-je mettre peut-être faire un sed dans mon while ou autre chose??
Toute aide est la bien venue. Merci par avance.
for FIC in toto*.txt; do
INPUT=E:\$FIC
eval "cat << EOF
$(cat Fichier_Maquette)
EOF
"
done
J'essaye de faire quelque chose mais je pense que je m'y prend mal. J'ai un fichier squelette avec des variables dedans que je voudrais mettre à jour par rapport à mon script principal.
Script principal : for FIC in `ls toto*.txt` do INPUT="E:${FIC}" while read -r MAQUETTE do echo "$MAQUETTE" done < Fichier_Maquette done
Fichier_Maquette: echo ${INPUT}
Le résultat me donne ${INPUT} alors que j'attend E:toto1.txt Même en mettant le INPUT= dans le while j'ai pareil.
Dois-je mettre peut-être faire un sed dans mon while ou autre chose??
Toute aide est la bien venue. Merci par avance.
for FIC in toto*.txt; do INPUT=E:$FIC eval "cat << EOF $(cat Fichier_Maquette) EOF " done
-- Stéphane
Ozzii
Merci à tous les deux:
j'ai fait cela:
eval "tt="$(cat Fichier_Maquette"" echo "$tt"
Il a fallu que je protège les " car dans mon fichier maquette j'ai des ( " ...
Merci.
Merci à tous les deux:
j'ai fait cela:
eval "tt="$(cat Fichier_Maquette""
echo "$tt"
Il a fallu que je protège les " car dans mon fichier maquette j'ai des
( " ...
Dans mon fichier de sorti j'ai EOF d'inséré à chaque fin de traitement (après chaque fichier trouvé) de la boucle for.
Une petite idée ?
Ne pas indenter le "EOF"
P.S: vaux mieux que j'utilise bash ou sh (je suis sous cygwin)?
Pas d'importance, ce code est standard.
-- Stéphane
Ozzii
On 22 oct, 11:16, Stephane CHAZELAS wrote:
Ne pas indenter le "EOF"
> P.S: vaux mieux que j'utilise bash ou sh (je suis sous cygwin)?
Pas d'importance, ce code est standard.
-- Stéphane
En fait il n'est pas indenté tout comme le "$(cat" (sinon c'est décal é dans le fichier de sorti). Déjà fait cette expérience lors de la mise en place de ta commande.
On 22 oct, 11:16, Stephane CHAZELAS <stephane_chaze...@yahoo.fr>
wrote:
Ne pas indenter le "EOF"
> P.S: vaux mieux que j'utilise bash ou sh (je suis sous cygwin)?
Pas d'importance, ce code est standard.
--
Stéphane
En fait il n'est pas indenté tout comme le "$(cat" (sinon c'est décal é
dans le fichier de sorti).
Déjà fait cette expérience lors de la mise en place de ta commande.
> P.S: vaux mieux que j'utilise bash ou sh (je suis sous cygwin)?
Pas d'importance, ce code est standard.
-- Stéphane
En fait il n'est pas indenté tout comme le "$(cat" (sinon c'est décal é dans le fichier de sorti). Déjà fait cette expérience lors de la mise en place de ta commande.
Lucas Levrel
Le 22 octobre 2009, Ozzii a écrit :
En fait il n'est pas indenté tout comme le "$(cat" (sinon c'est décalé dans le fichier de sorti). Déjà fait cette expérience lors de la mise en place de ta commande.
Tu devrais poster un exemple complet (syntaxe de la boucle, contenu de tous les scripts et fichiers)
-- LL
Le 22 octobre 2009, Ozzii a écrit :
En fait il n'est pas indenté tout comme le "$(cat" (sinon c'est décalé
dans le fichier de sorti).
Déjà fait cette expérience lors de la mise en place de ta commande.
Tu devrais poster un exemple complet (syntaxe de la boucle, contenu de
tous les scripts et fichiers)
En fait il n'est pas indenté tout comme le "$(cat" (sinon c'est décalé dans le fichier de sorti). Déjà fait cette expérience lors de la mise en place de ta commande.
Tu devrais poster un exemple complet (syntaxe de la boucle, contenu de tous les scripts et fichiers)