Amis du Sed ou eventuellement du Awk ....

Résolu
Bonjour ,

Je cherche une commande linux qui supprime un caractère spéciale et tout ce qui vient aprés jusqu'à la fin de la ligne pour chanque ligne.

Dans l'exemple ci dessous le caractére spéciale est un "espace", au premier "espace" je supprime tout ce qui vient après jusqu'en fin de ligne.

fichier1.txt fichier2.txt
aaaaaaa bbbbbbbbb aaaaaaa
ccccccccc ddddddd ccccccccc
eeeeeee fffffffffffffff eeeeeee
ggggggggg qqqqqqqqqqq ggggggggg

Je vous remercie d'avance.

3 réponses

  1. Contributeur
    Salut,

    $ sed 's/ .*//' fich 
    aaaaaaa
    ccccccccc
    eeeeeee
    ggggggggg

    $ awk '{ print $1 }' fich
    aaaaaaa
    ccccccccc
    eeeeeee
    ggggggggg

    $ cut -d ' ' -f 1 fich
    aaaaaaa
    ccccccccc
    eeeeeee
    ggggggggg

    0
    1. Parfait !!!!

      Merci à toi.
      0
      1. Rebonjour,

        Si je voulais faire l'inverse ... c'est à dire virer tout ce qui vient avant le pattern

        Merci.
        0
        1. Contributeur
          $ sed 's/[^ ]* //' fich 
          bbbbbbbbb aaaaaaa
          ddddddd ccccccccc
          fffffffffffffff eeeeeee
          qqqqqqqqqqq ggggggggg

          $ cut -d ' ' -f 2- fich
          bbbbbbbbb aaaaaaa
          ddddddd ccccccccc
          fffffffffffffff eeeeeee
          qqqqqqqqqqq ggggggggg
          0