Commande linux

Résolu
Salut

Je voudrais savoir comment afficher que le nombre de la 3ème ligne dans ce fichier (nommé
fic1
) sans le nom / prénom :
benali , oumer , 065987525
lolo , marti , 0678142536
pipo , mano , 0658479852
jean , pierre , 0685987452

4 réponses

  1. Contributeur
    $ sed 's/^[^,]* *, *[^,]* *, *//' fic1
    065987525
    0678142536
    0658479852
    0685987452
    1. Contributeur
      hello
      $ grep -Eo "[0-9]+"  fic1
      065987525
      0678142536
      0658479852
      0685987452
      1. Modérateur
        Ne pas oublier dans ce cas d'ajouter en fin de commande
        | sed '3q;d'
        afin de n'extraire que le 3e numéro. Et il ne faut pas que des numéros apparaissent dans le champs prénom et nom de famille. C'est peu probable mais bon :-)
    2. Modérateur
      Bonjour,

      En s'inspirant de cette discussion, tu peux faire par exemple :
      cat fic.txt | cut -d"," -f3 | sed '3q;d'
      • cat
        affiche le contenu du fichier ;
      • cut
        extrait la troisième colonne en utilisant le délimiteur
        ,
        ;
      • sed
        extrait la troisième ligne.

      Si de plus tu veux supprimer les espaces, tu peux les substituer par rien avec un
      sed
      supplémentaire :
      cat fic.txt | cut -d"," -f3 | sed '3q;d' | sed -e 's/ //g'


      Bonne chance
      1. Modérateur
        Bonjour,

        Regarde la fonction
        awk
        .

        Exemple :

        awk -F, '{print $3}' Input_file

        En y ajoutant un peu de
        sed
        ou de
        head
        et
        tail
        tu devrais obtenir ce que tu veux .