как печатать, если строка содержит определенный шаблон и не печатать, если она не содержит шаблон

">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 

Здравствуйте, у меня есть файл, содержащий такую ​​информацию. Я хочу напечатать все строки, начинающиеся с знака «>» и следующей строки, но есть условие, что строка, начинающаяся с знака «>», должна содержать букву V. Пожалуйста, помогите мне.

  • Сценарий Bash для суммирования «last -a»
  • Извлечь строки на основе диапазона в другом файле
  • Объединение нескольких файлов с одинаковым заголовком
  • Как выравнивать столбцы нескольких строк на фиксированном расстоянии с помощью vim
  • Как удалить конечную новую строку в bash?
  • Как выбрать строку с последней датой и временем
  • Как распечатать определенное условие столбца с помощью awk?
  • grepping для нескольких элементов
  • 3 Solutions collect form web for “как печатать, если строка содержит определенный шаблон и не печатать, если она не содержит шаблон”

    С GNU sed (стандарт в системе Linux) вы можете получить строку заголовка (содержащую V любом месте на нем) и первую строку последовательности из файла fasta следующим образом:

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

    Это предполагает, что файл fasta правильно отформатирован.

    Параметр -n отключает вывод по умолчанию и /^>.*V/,+1p будет печатать любую строку заголовка с V в нем вместе с непосредственно следующей строкой.

    Я хочу напечатать все строки, начинающиеся с знака «>» и следующей строки, но есть условие, что строка, начинающаяся с знака «>», должна содержать букву V.

    Кажется, что этот grep работает:

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

    Пример:

     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 

    Ты сказал:

    Я хочу напечатать все строки, начинающиеся с знака «>» и следующей строки, но есть условие, что строка, начинающаяся с знака «>», должна содержать букву V

    Это хорошая работа для 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 
    Interesting Posts

    Какая разница между общим использованием ЦП и использованием Процессного ЦП

    file command + как просмотреть все результаты из команды file

    Установка глобальных переменных среды при загрузке в Solaris 11

    Есть ли способ получить имя файла (или заголовок) завершенного задания на печать?

    Ошибка входа в сервер Debian

    «Меньше» эквивалент командной строки «tail -f»

    Есть ли более эффективный способ дефрагментации Linux-памяти, кроме перезагрузки?

    Есть ли разница между u и c в mknod

    выполнить команду в определенном диапазоне каталогов

    Скрипт для преобразования имен файлов в нижний регистр в зависимости от расширения

    Как я могу сделать psf-шрифт для консоли из otf?

    Добавление одного прерывания строки плюс одна строка текста внизу – в одной строке, один сегмент, кодировка

    Правильный подход для обновления apt-программного обеспечения до не-подходящих версий?

    Как конвертировать libreoffice ODT в PDF в bash

    Как предотвратить arp-scan от записи в syslog?

    Linux и Unix - лучшая ОС в мире.