Commande grep/sed dans script bash avec regex
Bonjour à tous,
j'ai la commande suivante qui fait bien ce que je veux lorsque je l’exécute dans une console :
grep '^\ \+100\+\ \+[0-9]\+\ \+[0-9]\+\ ' pm-3d-dose.dat | sed -e '/^\ \+[0-9]\+\ \+[0-9]\+\ \+190\ /a\ \' > toto.dat
je veux utiliser un script pour la généraliser (à terme je vais utiliser DIALOG).
Donc j'ai commencer le script suivant :
Code:
1 2 3
|
REGEX1="^\ \+${BIN}\+\ \+[0-9]\+\ \+[0-9]\+\ "
REGEX2="/^\ \+[0-9]\+\ \+[0-9]\+\ \+${NBZ}\ /a\ \\" |
et il y a la commande :
Code:
1 2
|
grep '${REGEX1}' ${PM3D} | sed -e '${REGEX2}' > toto.dat |
Si je fait :
Code:
1 2
|
echo "grep '${REGEX1}' ${PM3D} | sed -e '${REGEX2}' > toto.dat" |
j'ai bien la commande que je veux :
Code:
1 2
|
grep '^\ \+100\+\ \+[0-9]\+\ \+[0-9]\+\ ' pm-3d-dose.dat | sed -e '/^\ \+[0-9]\+\ \+[0-9]\+\ \+190\ /a\ \' > toto.dat |
mais pourtant elle s'exécute pas ! J'ai le message :
sed: -e expression n°1, caractère 0: `{' non refermée
Quelqu'un a une idée ?
Merci d'avance