Récupération de ligne pattern colonne

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

1 réponse

  1. Contributeur
    Salut,
    Les colonnes sont toutes séparées par une tabulation.
    Alors faut le lui dire ;-\

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


    1. bof
      $ cat -A /tmp/fichier
      1^I2337194^I.^IC^IT^I.^I.$
      2^I2337197^I.^IA^IG^I.^I.$
      1^I2337199^I.^IA^IC^I.^I.$

      awk '$1 ~ 2' /tmp/fichier
      2 2337197 . A G . .
    2. Cette commande est équivalente à celle que j'ai proposée lors de ma question avec la même problématique, il n'y a pas que les lignes avec le 2 de trouver mais toutes les lignes contenant un 2 (donc 12, 22, ...)
    3. @lEprofSonDkoncommande impossible car il me retourne une erreur pour cat : cat : illegal option--A
    4. @irishupkça devrait fonctionner, je le montre.

      rappelle-nous les caractéristiques de l'OS (linux, BSD, windows...) que tu utilises, stp.
      et de l'interfaçage (vm, putty,. cygwin..).
    5. @lEprofSonDkonnormalement j'utilise un serveur réservé à la recherche biologique (on s'y connecte avec ssh sous mac et par le biais de putty sous windows) mais actuellement il est sous mise à jour et je prends le relais grâce au terminal de mac