Script shell utilisant sed

Bonjour, j'aurais besoin d'une commande sed me permettant de remplacer dans un fichier les caractères:
Null, Null, Null, Null, Null, 0, Null, Null, 0,0, Null
par:
Null, NUll, Null, Null, Null, 0, Null, NUll, 0,0, 1, Null, Null, Null, Null

Je ne mai^trise pas l'outil. Merci de votre aide. cdlt
Configuration: Windows XP
Mozilla 1.7.13

2 réponses

  1. Contributeur
    Je ne sais pas si sed accepte le \0 :

    sed 's/0,0, \0$/0,0, 1, \0, \0, \0, \0/'
    1. Modérateur
      Salut,

      Plutôt en notation hexadecimale :
       sed 's/\x0$/1, \x0, \x0, \x0, \x0/' 
      ;-)
  2. oui, mais si je cherche la chaine de caractères "Null, Null, Null, Null, Null, 0, Null, Null, 0,0, Null"?
    1. Modérateur
      Ben tu l'indiques en début de commande :
      sed '/motif à rechercher/ s/chaîne 1/chaîne 2/'
      ;-))
    2. ça marche po!
    3. Modérateur
      @richard260958Si tu veux de l'aide il va falloir être beaucoup plus explicite, sans quoi comme nous ne sommes pas devin...

      Donc, mets ton fichier sur cjoint, et dis nous exactement ce que tu veux faire/obtenir ;-))
    4. @richard260958je veux à partir de la ligne:

      Insert into CONTRACT_TYPES (bla, bla, bla ,Null, Null, Null, Null, Null, 0, Null, Null, 0, 0, Null)

      obtenir:

      Insert into CONTRACT_TYPES (bla, bla, bla ,Null, Null, Null, Null, Null, 0, Null, Null, 0, 0, 1, Null, Null, null, Null)
    5. Contributeur
      @richard260958sed 's/Null, 0, 0, Null)$/Null, 0, 0, 1, Null, Null, null, Null)/'