manueb a écrit 3 commentaires

  • # Je relance le sujet

    Posté par  . En réponse au message Commande sed changer un mot par la valeur d'une variable. Évalué à 1.

    Pas mieux.

    Je ne sais pas comment,mais ça a fonctionné puis plus rien.

    C'est à n'y rien comprendre.

    La commande ci-dessus me remplace ma chaîne LOGJOUR par la chaîne ""$logjour"" et non pas la valeur de $logjour.

    Si qqun à une idée de génie je suis preneur…

    Merci encore

  • # Résolu grâce à vous merci

    Posté par  . En réponse au message Commande sed changer un mot par la valeur d'une variable. Évalué à 1. Dernière modification le 19 février 2018 à 12:57.

    La commande est donc celle-ci. Pour que la ligne de texte (valeur de $logjour) soit considérée comme tel il faut deux double-quotes.

    cat mail.html | sed -e "s%LOGJOUR%""$logjour""%g" > $maildir/mail1.html

    Merci beaucoup pour l'aide.

  • # retour de mon echo $logjour

    Posté par  . En réponse au message Commande sed changer un mot par la valeur d'une variable. Évalué à 1.

    C'est en fait des ligne de log de backuppc…

    2018-02-15 TEST 2018-02-15 16:00:01 incr backup started back to 2018-02-14 15:03:12 (backup #3) for share ebtek$ 2018-02-15 16:13:37 Output from DumpPostUserCmd: /var/lib/backuppc/logmail.sh: 4: /var/lib/backuppc/logmail.sh: 2018-02-15: not found 2018-02-15 16:13:37 Output from DumpPostUserCmd: repertoire de backup 2018-02-15 16:13:37 Output from DumpPostUserCmd: /var/lib/backuppc/pc/192.168.20.6 2018-02-15 16:13:37 Output from DumpPostUserCmd: Journal 2018-02-15 16:13:37 Output from DumpPostUserCmd: 2018-02-15 16:13:38 incr backup 4 complete, 0 files, 0 bytes, 18 xferErrs (0 bad files, 0 bad shares, 18 other)

    J'ai modifier ma commande comme suit et voici ce qu'il me renvoi

    sed -e "s/LOGJOUR/"$logjour"}/g" $maildir/mail.html

    et comme ça aussi au cas où…

    sed -e 's/LOGJOUR/'$logjour'}/g' $maildir/mail.html

    sortie :

    sed: -e expression n°1, caractère 20: commande `s' inachevée