Shell - modifier les enrgts d'un fichier txt

macealwi Messages postés 1 Statut Membre -  
jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   -
Bonjour tout le monde,

Peut être quelqu 'un peut-il m'aider.

Je cherche avec un script shell à modifier tous les enregistrements d'un fichier texte en substituant les caractères de la position 5 à la position 8 par la chaîne de caractères MAG.

Ex:

0123TXTGF1
0124SXTGF2
0125UXTHF3

-> doit donner

0123MAGGF1
0124MAGGF2
0125MAGHF3

Je vous remercie d'avance pour vos idées.

macealwi
Configuration: Windows XP
Internet Explorer 7.0

2 réponses

  1. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
     
    Salut,
    lami20j@debian:~/trash$ cat txt
    0123TXTGF1
    0124SXTGF2
    0125UXTHF3
    lami20j@debian:~/trash$ sed -i.orig 's/\(....\)...\(.*\)/\1MAG\2/' txt
    lami20j@debian:~/trash$ cat txt
    0123MAGGF1
    0124MAGGF2
    0125MAGHF3
    lami20j@debian:~/trash$ cat txt.orig
    0123TXTGF1
    0124SXTGF2
    0125UXTHF3
    
    0
  2. jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 898
     
    Salut,

    Avec "sed" c'est faisable :
    sed 's/\(^.\{4\}\)\(.\{3\}\)\(.*\)$/\1MAG\3/'
    ;-))
    0