Shell

salut tout le monde :)

je travail avec ksh.

j'utilise la commande sed pour modifier des expression dans des fichiers

par exemple:

sed 's/motif1/motif2/'

je veux substituer le motif1 par le motif2

le motif1 : . * gh
le motif2 : / . mari

merci de me répondre

4 réponses

  1. difficile parce que je peux pas écrire cette commande et avec ce syntaxe je suis encore débutante

    c'est grâce à toi que je parvient à comprendre

    merci jipicy pour tn aide :)
    1. dans le cas du deuxième cas sed 's#\(\. \)\* gh#/ \1mari#' myriam
      le 1 fait référence à ce qui est entre parenthèse
      le deuxième cas est un peu plus difficile pour moi :(
      1. Modérateur
        Oui.

        Difficile mais tu l'as bien compris pourtant ? ;-))
    2. merci pour ta réponse jipyci :)))

      si j'ai bien compris
      # sert à délimiter expression régulier
      l'anti slash \ : pour différencier entre ce qui dans les expressions et les caractére spéciaux du langage ksh

      c'est ça ??
      1. Modérateur
        # sert à délimiter expression régulier
        Oui, dans la mesure où celui par défaut (/) est présent dans le motif de recherche et de remplacement. On aurait pu aussi garder le "/" et échapper ceux des motifs...

        l'anti slash \ : pour différencier entre ce qui dans les expressions et les caractére spéciaux du langage ksh
        Surtout pour les différencier des caractères spéciaux utilisés dans les expressions régulières.
    3. Modérateur
      Salut,

      jp@MDK:~/tmpfs ssh$ cat myriam
      je veux substituer le motif1 par le motif2
      
      le motif1 : . * gh
      le motif2 : / . mari
      
      merci de me répondre
      
      jp@MDK:~/tmpfs ssh$ sed 's#\. \* gh#/ \. mari#' myriam
      je veux substituer le motif1 par le motif2
      
      le motif1 : / . mari
      le motif2 : / . mari
      
      merci de me répondre


      Ou :
      jp@MDK:~/tmpfs ssh$ sed 's#\(\. \)\* gh#/ \1mari#' myriam
      je veux substituer le motif1 par le motif2
      
      le motif1 : / . mari
      le motif2 : / . mari
      
      merci de me répondre
      
      jp@MDK:~/tmpfs ssh$


      ;-))