Commande sed

Résolu
Bonjour,

je vous ecrit car je souhaite realiser une commande, mais celle-ci ne fonctionne pas correctement.
je souhaite a partir d'un fichier du type:

essai.txt essai.txt

AAAAAAAAAAA AAAAAAAAAAA
BBBBBBBBBBBB BBBBBBBBBBBB
CCCCCCCCCCC KKKKKKKKKKKKKK
DDDDDDDDDDD DDDDDDDDDDD
EEEEEEEEEEEE EEEEEEEEEEEE

donc pour cela je fais la commande suivante:

sed "3 c\KKKKKKKKKKKKKKKK" essai.txt > essai.txt. Or celle-ci ne fonctionne pas. Pourquoi?

Merci de bien vouloir m' éclairer.
Configuration: Windows XP
Firefox 3.0.10

9 réponses

  1. Modérateur
    Salut,

    Tu souhaites faire quoi exactement ? Tu as oublié de le préciser ;-(
    1. je souhaite via cette commande remplacer la ligne 3 par l 'expression KKKKKKKKKK du fichier essai.txt et réecrire le résultat dans ce meme fichier.
      Merci.
      1. Modérateur
        jp@MDK:~/tmpfs ssh$ cat plop
        AAAAAAAAAAA AAAAAAAAAAA
        BBBBBBBBBBBB BBBBBBBBBBBB
        CCCCCCCCCCC KKKKKKKKKKKKKK
        DDDDDDDDDDD DDDDDDDDDDD
        EEEEEEEEEEEE EEEEEEEEEEEE
        
        jp@MDK:~/tmpfs ssh$ sed -i.bak '3c\
        KKKKKKKKKKKK
        ' plop
        
        jp@MDK:~/tmpfs ssh$ cat plop
        AAAAAAAAAAA AAAAAAAAAAA
        BBBBBBBBBBBB BBBBBBBBBBBB
        KKKKKKKKKKKK
        DDDDDDDDDDD DDDDDDDDDDD
        EEEEEEEEEEEE EEEEEEEEEEEE
        
        jp@MDK:~/tmpfs ssh$
        ;-))
        1. pardon excusez moi car l affichage de mon premier post n est pas correcte. Je souhaite passer d' un fichier de ce type:

          AAAAAAAAAAA
          BBBBBBBBBBBB
          CCCCCCCCCCC
          DDDDDDDDDDD
          a un fichier de ce type:

          AAAAAAAAAAA
          BBBBBBBBBBBB
          KKKKKKKKKKK
          DDDDDDDDDD

          Désoler je n avait pas vu que mon premier post était erroné dans l affichage.
          1. Modérateur
            A quel niveau ?
            Des messages d'erreurs ?

            Affiche la commande :
             sed --version
            1. j'ai fait une erreur lors de la frappe et finalement cette commande marche mais comment faire pour eviter que le fichier .bak ne se creer.
              Merci.
              1. Modérateur
                Enlève le".bak" de "-i.bak" :
                sed -i '3c\
                KKKKKKKKKKKK
                ' plop
                ;-))