Подсчет вхождения шаблона с пробелами в файле с помощью bash - PullRequest
0 голосов
/ 01 февраля 2019

как заголовок suugest, я хотел бы сосчитать вхождения шаблона с пробелами или табуляцией.Я пробовал:

grep -o ' 2L ' file | wc -l

и

grep -o '\s2L\s' file | wc -l

, но он напечатал меньшее число (только 1), чем

grep -o 2L file | wc -l

, который печатает 14567. Шаблон [space]2L[space] часто встречается в файле.Ваша душа?

Здесь я представляю первые строки cat file вывода: 2L^Isplign_na_dbEST_ncbi^Imatch^I16299682^I16299851^I.^I-^I.^IID=Splign:0568174_na_dbEST_ncbi;Name=RP003180722.5prime-GH911198-na_dbEST_ncbi_20090309-splign;program=splign;programversion=1.0;sourcename=na_dbEST_ncbi;target_type=EST;Target=GH911198 1 171 +$ 2L^Isplign_na_dbEST_ncbi^Imatch_part^I16299682^I16299851^I100^I-^I.^IName=:ncbi_2178736;Parent=Splign:0568071_na_dbEST_ncbi;target_type=EST;Target=GH773194 1 170 +$ 2L^Isplign_na_dbEST_ncbi^Imatch_part^I16299682^I16299851^I100^I-^I.^IName=:ncbi_2178839;Parent=Splign:0568174_na_dbEST_ncbi;target_type=EST;Target=GH911198 1 171 +$ 2L^Isplign_na_dbEST_ncbi^Imatch_part^I16299682^I16299851^I99.41^I-^I.^IName=:ncbi_2178729;Parent=Splign:0568064_na_dbEST_ncbi;target_type=EST;Target=GH807525 1 170 +$ 2L^Isplign_na_dbEST_ncbi^Imatch_part^I16299682^I16299851^I99.41^I-^I.^IName=:ncbi_2178751;Parent=Splign:0568086_na_dbEST_ncbi;target_type=EST;Target=GH890956 1 178 +$ 2L^Isplign_na_dbEST_ncbi^Imatch^I16299682^I16299850^I.^I-^I.^IID=Splign:0568097_na_dbEST_ncbi;Name=RP003087707.5prime-GH857137-na_dbEST_ncbi_20090309-splign;program=splign;programversion=1.0;sourcename=na_dbEST_ncbi;target_type=EST;Target=GH857137 4 172 +$

и часть less вывода:

##gff-version 3
##sequence-region 2L -204333 23011544
##species  http://www.ncbi.nlm.nih.gov/Taxonomy/Browser/wwwtax.cgi?id=7227
##genome-build FlyBase r5.21
2L      FlyBase chromosome_band -204333 1326937 .       +       .       ID=band-21_chromosome_band;Name=band-21
2L      FlyBase chromosome_band -204333 22221   .       +       .       ID=band-21A_chromosome_band;Name=band-21A
2L      FlyBase chromosome_band -204333 -153714 .       +       .       ID=band-21A1_chromosome_band;Name=band-21A1
2L      FlyBase breakpoint      -204333 -204333 .       .       .       ID=Df(2L)ED50001:bk1_breakpoint;Name=Df(2L)ED500

1 Ответ

0 голосов
/ 01 февраля 2019

Похоже, у вас есть шаблон 2L прямо в начале строки и вкладка после него.

Вы можете использовать этот простой awk, чтобы получить счет:

awk '$1 == "2L"{++c} END{print c}' file

Использование grepэто будет:

grep -c '^2L[[:blank:]]' file
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...