Menu

Récupération de ligne pattern colonne

Messages postés
24
Date d'inscription
vendredi 13 avril 2018
Statut
Membre
Dernière intervention
8 juin 2019
- - Dernière réponse : lEprofSonDkon
Messages postés
190
Date d'inscription
jeudi 13 décembre 2018
Statut
Membre
Dernière intervention
14 juin 2019
- 22 mai 2019 à 18:55
Bonjour,

je souhaiterai récupérer dans un fichier les lignes de mon document qui ont dans la colonne 1 le chiffre 2.

Les colonnes sont toutes séparées par une tabulation.

J'ai essayé grep, awk, sans succès.

1 2337194 . C T . .
2 2337197 . A G . .
1 2337199 . A C . .

ainsi, dans cet exemple je ne veux récupérer que la deuxième ligne car c'est la seule qui contient 2 dans sa première colonne

ce que j'ai essayé :

 awk '$1 ~ /2/ { print $0 }' GQPDOMB.vcf >2.txt


ce qui marche mais je récupère toutes les lignes où il y a un 2 donc 12, 22, etc ...

alors que moi je voudrai strictement 2,
comment faire ?

Merci de votre aide
Afficher la suite 

1 réponse

Messages postés
36564
Date d'inscription
dimanche 7 novembre 2010
Statut
Contributeur
Dernière intervention
18 juin 2019
3611
0
Merci
Salut,
Les colonnes sont toutes séparées par une tabulation.
Alors faut le lui dire ;-\

awk -F'\t' '$1 ~ /2/ { print $0 }'


lEprofSonDkon
Messages postés
190
Date d'inscription
jeudi 13 décembre 2018
Statut
Membre
Dernière intervention
14 juin 2019
7 > irishupk
Messages postés
24
Date d'inscription
vendredi 13 avril 2018
Statut
Membre
Dernière intervention
8 juin 2019
-
bon, c'est GNU awk; le problème ne vient pas de là.
ne reste que le fichier à examiner.
sur quel système a-t-il écrit créé/modifié la dernière fois ?
tu as
od
?
alors, quel est le format des fins de lignes affiché par
od -c tonFichier
?

s'il n'y a pas de secrets d'État, tu peux nous afficher un extrait du résultat ?
ou fournir le fichier en pièces jointes (s'il n'est pas trop lourd) ?
irishupk
Messages postés
24
Date d'inscription
vendredi 13 avril 2018
Statut
Membre
Dernière intervention
8 juin 2019
-
Bonjour, c'est macos qui a ouvert en dernier ce fichier
od ne me dit rien, je ne connais pas mais je dois l'avoir sur mon mac car la prochaine commande fonctionne :

0000000 \n 1 2 3 3 7 1 9 4 . C T
0000020 . . \n 2 2 3 3 7 1 9 7 .
0000040 A G . . \n 1 2 3 3 7 1
0000060 9 9 . A C . .
0000075

Merci
lEprofSonDkon
Messages postés
190
Date d'inscription
jeudi 13 décembre 2018
Statut
Membre
Dernière intervention
14 juin 2019
7 > irishupk
Messages postés
24
Date d'inscription
vendredi 13 avril 2018
Statut
Membre
Dernière intervention
8 juin 2019
-
je ne vois pas de tabulations dans le fichier (
\t
), ni d'espaces.
ça c'est plus bizarre pour un fichier censé comporter des colonnes. 8O

tu peux modifier ton message pour mettre ce qu'affiche la commande entre balises < code > (le bouton
<>
) ? parce que, là, on a perdu le formatage.
irishupk
Messages postés
24
Date d'inscription
vendredi 13 avril 2018
Statut
Membre
Dernière intervention
8 juin 2019
> lEprofSonDkon
Messages postés
190
Date d'inscription
jeudi 13 décembre 2018
Statut
Membre
Dernière intervention
14 juin 2019
-
Bonjour, c'est macos qui a ouvert en dernier ce fichier
od ne me dit rien, je ne connais pas mais je dois l'avoir sur mon mac car la prochaine commande fonctionne :

0000000 \n 1 2 3 3 7 1 9 4 . C T
0000020 . . \n 2 2 3 3 7 1 9 7 .
0000040 A G . . \n 1 2 3 3 7 1
0000060 9 9 . A C . .
0000075


Merci


Sinon ce n'est pas grave, j'utiliserai une façon plus enfantine de le faire. merci quand même de ton aide et de ton temps ! (PS : je ne parviens pas à modifier mon message avec le résultat de la commande)
lEprofSonDkon
Messages postés
190
Date d'inscription
jeudi 13 décembre 2018
Statut
Membre
Dernière intervention
14 juin 2019
7 > irishupk
Messages postés
24
Date d'inscription
vendredi 13 avril 2018
Statut
Membre
Dernière intervention
8 juin 2019
-
ça confirme ce que je disais : la commande montre qu'il n'y a pas de colonnes dans le fichier.

enfin, si, une seule colonne, donc
awk '$1 ~ 2' fichier
devrait afficher les trois lignes, puisqu'il y a des deux sur chaque lignes.
Commenter la réponse de zipe31