Modifier un fichier en y insérant la date

Résolu
ddavida92 Messages postés 1 Date d'inscription   Statut Membre -  
 ddavida92 -
Bonjour à tous,

J'ai un fichier à modifier, la ligne commence toujours par :

@00001 12345678
@00002 12345678
@00003 12345678

etc ...

je dois insérer la date sous format MMJJAA devant le chiffre 15201520

Le résultat doit donner :

@00001 300420712345678
@00002 300420712345678

etc

Merci de votre aide
Configuration: Linux

2 réponses

  1. jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 898
     
    Salut,

    Utilises l'option "-i.bak" (version 4.0 et supérieure) de "sed" si tu veux modifier ton fichier à la volée et conserver une sauvegarde du fichier d'entrée :
    [jp@MDK tmpfs]$ cat ddavida92
    
    @00001 12345678
    @00002 12345678
    @00003 12345678
    
    [jp@MDK tmpfs]$ sed 's/\(^@.* \)\(.*\)/\1'"$(date '+%m%d%y')"'\2/' ddavida92
    
    @00001 04300712345678
    @00002 04300712345678
    @00003 04300712345678
    
    [jp@MDK tmpfs]$ 
    ;-))
    0
    1. ddavida92
       
      Merci pour tout
      0
  2. dubcek Messages postés 18627 Date d'inscription   Statut Contributeur Dernière intervention   5 659
     
    awk '{ $2=date $2 ; print $0}' date=`date '+%m%d%y'` < fichier
    0