Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

  1. ###raw>post.musername###
    Futur Membre du Club
    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 :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
     
    REGEX1="^\ \+${BIN}\+\ \+[0-9]\+\ \+[0-9]\+\ "
    REGEX2="/^\ \+[0-9]\+\ \+[0-9]\+\ \+${NBZ}\ /a\  \\"

    et il y a la commande :
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
     
    grep '${REGEX1}' ${PM3D} | sed -e  '${REGEX2}' > toto.dat

    Si je fait :
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
     
    echo "grep '${REGEX1}' ${PM3D} | sed -e  '${REGEX2}' > toto.dat"

    j'ai bien la commande que je veux :
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    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
      0  0

  2. #2
    Modérateur

    Bonjour,

    les variables ne sont pas développées entre apostrophes :
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    $ var="bla bla"
    $ echo "'$var'"
    'bla bla'
    $ echo '$var'
    $var
    Cette signature n'a pas pu être affichée car elle comporte des erreurs.

###raw>template_hook.ano_emploi###