comment imprimer si une ligne contient un motif spécifique et ne pas imprimer si elle ne contient pas le motif

">16RI1_0 M01230:42:000000000-AWMRD:1:1101:15012:1778 1:N:0:0 TATCCGGATTTACTGGGTGTAAAGGGAGCGTAGGCGGCCATGCAAGTCAGAAGTGAAAAC ">16RA2_1 M01230:42:000000000-AWMRD:1:1101:15923:1780 1:N:0:0 TTGTCCGGATTTATTGGGCGTAAAGCGAGCGCAGGCGGTTTCTTAAGTCTGATGTGAAAGC ">0VC3_7 M01230:42:000000000-AWMRD:1:1101:15805:1805 1:N:0:0 TCATGAAGAACTCCGATCGCGAAGGCAAGTGTCCGGGGTGCAACTGACGCTGAGGCTCGAA ">11VI2_15 M01230:42:000000000-AWMRD:1:1101:17657:1817 1:N:0:0 GCGGCTTACTGGACTGTAACTGACGTTGAGGCTCGAAAGCGTGGGGAGCAAACAGGGCTC 

Bonjour, j'ai un file contenant des informations comme celle-ci. Je veux imprimer toutes les lignes commençant par ">" signe et la ligne suivante, mais il y a une condition la ligne commençant par ">" devrait contenir la lettre V. S'il vous plaît aidez-moi.

Avec GNU sed (standard sur le système Linux), vous pouvez get la ligne d'en-tête (contenant un V n'importe où dessus) et la première ligne de la séquence à partir d'un file fasta comme celui-ci:

 sed -n '/^>.*V/,+1p' sequence.fa 

Cela suppose que le file fasta est correctement formaté.

Le -n désactive la sortie par défaut et /^>.*V/,+1p imprime toute ligne d'en-tête avec un V , ainsi que la ligne immédiatement suivante.

Je veux imprimer toutes les lignes commençant par le signe ">" et la ligne suivante, mais il y a une condition: la ligne commençant par ">" doit contenir la lettre V.

Ce grep semble fonctionner:

 grep -A 1 '^">.*V' 

Exemple:

 grep -A 1 '^">.*V' file ">0VC3_7 M01230:42:000000000-AWMRD:1:1101:15805:1805 1:N:0:0 TCATGAAGAACTCCGATCGCGAAGGCAAGTGTCCGGGGTGCAACTGACGCTGAGGCTCGAA ">11VI2_15 M01230:42:000000000-AWMRD:1:1101:17657:1817 1:N:0:0 GCGGCTTACTGGACTGTAACTGACGTTGAGGCTCGAAAGCGTGGGGAGCAAACAGGGCTC 

Tu as dit:

Je veux imprimer toutes les lignes commençant par ">" signe et la ligne suivante mais il y a une condition la ligne commençant par ">" devrait contenir la lettre V

C'est un bon travail pour awk:

 $ awk '/^">.*V/{print $0;getline line; print line}' input.txt ">0VC3_7 M01230:42:000000000-AWMRD:1:1101:15805:1805 1:N:0:0 TCATGAAGAACTCCGATCGCGAAGGCAAGTGTCCGGGGTGCAACTGACGCTGAGGCTCGAA ">11VI2_15 M01230:42:000000000-AWMRD:1:1101:17657:1817 1:N:0:0 GCGGCTTACTGGACTGTAACTGACGTTGAGGCTCGAAAGCGTGGGGAGCAAACAGGGCTC