Commande linux

Résolu
Lotfi -  
dubcek Messages postés 18789 Date d'inscription   Statut Contributeur Dernière intervention   -
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
A voir également:

4 réponses

jordane45 Messages postés 38486 Date d'inscription   Statut Modérateur Dernière intervention   4 752
 
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 .

0
mamiemando Messages postés 33769 Date d'inscription   Statut Modérateur Dernière intervention   7 878
 
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
0
dubcek Messages postés 18789 Date d'inscription   Statut Contributeur Dernière intervention   5 637
 
hello
$ grep -Eo "[0-9]+"  fic1
065987525
0678142536
0658479852
0685987452
0
mamiemando Messages postés 33769 Date d'inscription   Statut Modérateur Dernière intervention   7 878
 
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 :-)
0
dubcek Messages postés 18789 Date d'inscription   Statut Contributeur Dernière intervention   5 637
 
$ sed 's/^[^,]* *, *[^,]* *, *//' fic1
065987525
0678142536
0658479852
0685987452
0