Subsitution Bash

Résolu
Maillon -  
 Maillon -
Bonjour,

Voilà j'aimerai mettre cette variable dans un sed : /data/www/site/

Seulement il faut que j'échappe les "/" à chaque fois et vu que mon /data/www/site/ est une variable je ne peux pas le faire directement dans le sed.

Alors j'ai écris ça :
T=${TARGET//\//\\//}
sed -i "s/DING/$T/g" fichier

Donc normalement je remplacerais Ding par /data/www/site/

Seulement quand je l'exécute ca me fait un bad substitution.

J'ai utiliser ce lien pour m'aider
https://www.linuxjournal.com/article/8919#comment-133250

Quelqu'un aurait-il une idée ?

Merci.

Cordialement,
Configuration: Windows XP
Firefox 2.0.0.14

1 réponse

  1. jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 898
     
    Salut,
    jp@MDK:~/tmpfs ssh$ var="/var/www/data"
    
    jp@MDK:~/tmpfs ssh$ echo $var
    /var/www/data
    
    jp@MDK:~/tmpfs ssh$ echo "C'est dingue"
    C'est dingue
    
    jp@MDK:~/tmpfs ssh$ echo "C'est dingue" | sed "s|ding|$var|"
    C'est /var/www/dataue
    
    jp@MDK:~/tmpfs ssh$
    Voir : SED - The Stream EDitor - Part I
    SED - The Stream EDitor - Part II
    SED - The Stream EDitor - Part III

    ;-))
    0
    1. Maillon
       
      Super ça marche :)

      Merci Jipicy ;-)
      0