Suppresion de caractères en début de lignes

pamps -  
lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   -
Bonjour à tous,

J'aimerais supprimer les 5 premiers caractères de chaque ligne de mon fichier.
J'ai l'impression que la commande sed peut résoudre mon problème mais ne sais pas trop l'utiliser.
Merci à vous de m'indiquer comment faire.

3 réponses

  1. dubcek Messages postés 18627 Date d'inscription   Statut Contributeur Dernière intervention   5 659
     
    hello
    sed 's/^.\{5\}//' fichier
    1
    1. pamps
       
      Merci de votre re-activité. Je profite pour poser une question supplémentaire :
      Comment ferais-je pour supprimer les caractères de la postiion 2 à la position 5 de chaque ligne ???
      0
    2. dubcek Messages postés 18627 Date d'inscription   Statut Contributeur Dernière intervention   5 659
       
      $ cat a1
      1234567890
      1234567890
      1234567890
      1234567890
      $ sed 's/^\(.\).\{4\}/\1/' a1
      167890
      167890
      167890
      167890
      
      0
    3. pamps
       
      merci beaucoup
      0
    4. pamps
       
      sed 's/^.\{5\}//' fichier
      Comment puis-je paramétrer la valeur 5 de sorte que cette valeur soit reçu en paramètre de mon script et interprété correctement à l'execution ?
      0
    5. jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 898
       
      En supposant que la valeur est le 1er paramètre...

      sed 's/^.\{'"$1"'\}//' fichier 
      
      ou
      
      sed "s/^.\{$1\}//" fichier 
      0
  2. jipicy Messages postés 40842 Date d'inscription   Statut Modérateur Dernière intervention   4 898
     
    Salut,

    jp@MDK:~/tmpfs ssh$ cat pamps
    Bonjour à tous,
    
    J'aimerais supprimer les 5 premiers caractères de chaque ligne de mon fichier.
    J'ai l'impression que la commande sed peut résoudre mon problème mais ne sais pas trop l'utiliser.
    Merci à vous de m'indiquer comment faire.
    
    jp@MDK:~/tmpfs ssh$ sed -i.bak 's/^.\{5\}//' pamps
    
    jp@MDK:~/tmpfs ssh$ cat pamps
    ur à tous,
    
    erais supprimer les 5 premiers caractères de chaque ligne de mon fichier.
    l'impression que la commande sed peut résoudre mon problème mais ne sais pas trop l'utiliser.
     à vous de m'indiquer comment faire.
    
    jp@MDK:~/tmpfs ssh$

    ;-))
    0
  3. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
     
    Salut,

    Par exemple,

    ~ $ cat plop
    0123456789
    0123456789
    0123456789
    0123456789
    0123456789
    ~ $ n=5
    ~ $ sed "s/^.\{$n\}//" plop
    56789
    56789
    56789
    56789
    56789


    0