Remplacer position dans un fichier

kikou1984 Messages postés 2 Statut Membre -  
zipe31 Messages postés 34620 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Je cherche une commande linux capable de remplacer un caractère donné (selon une position) dans un fichier.

Exemple :
ABCDEFGHIJ -> remplacer la position 3 par 'espace'
AB DEFGHIJ -> résultat.

J'aimerai bien que toutes les lignes de mon fichier soient traitées

Je suis débutant dans Le monde Linux.

Si quelqu'un peut m'aider ca serai sympa !

Merci d'avance

2 réponses

  1. zipe31 Messages postés 34620 Date d'inscription   Statut Contributeur Dernière intervention   6 501
     
    Salut,

    $ echo "${A}"
    ABCDEFGHIJ
    ABCDEFGHIJ
    ABCDEFGHIJ
    
    $ echo "${A}" | sed 's/./ /3'
    AB DEFGHIJ
    AB DEFGHIJ
    AB DEFGHIJ
    
    $ echo "${A}" | sed 's/\(.\{2\}\)./\1 /'
    AB DEFGHIJ
    AB DEFGHIJ
    AB DEFGHIJ
    
    $
    0
  2. kikou1984 Messages postés 2 Statut Membre
     
    Merci pour la réponse :

    supposons que j'ai un fichier toto.txt.

    La commande serait laquelle ?!

    je comprend pas tous ces //// un peu partout :S !
    ,

    Pourrais tu m'expliquer stp merci d'avance
    0
    1. zipe31 Messages postés 34620 Date d'inscription   Statut Contributeur Dernière intervention   6 501
       
      supposons que j'ai un fichier toto.txt.
      La commande serait laquelle ?!

      sed -i.bak 's/./ /3'  toto.txt


      je comprend pas tous ces //// un peu partout :S !
      Pourrais tu m'expliquer stp merci d'avance

      Voir dans la FAQ sur Sed, notamment Sed - Introduction à SED (part I, II et III)

      ;-))
      0