bash - 使用 bash 计算文件中带有空格的模式的出现次数
问题描述
正如标题所言,我想计算涉及空格或制表符的模式的出现次数。我努力了:
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
解决方案
看起来你2L
在行开始就有模式,之后有一个标签。
您可以使用这个简单的 awk 来获取计数:
awk '$1 == "2L"{++c} END{print c}' file
使用grep
它将是:
grep -c '^2L[[:blank:]]' file
推荐阅读
- excel - 有没有办法在 CountIf 公式中使用变量,以便始终将列迭代 1
- dart - Flutter中如何处理ListView的渲染错误
- c++ - Windows 生物识别框架示例 umdf 驱动程序:此设备无法启动。(代码 10)
- javascript - 如何删除快照数据中的 Firebase 云功能按键?
- python - 映射列值熊猫
- node.js - 我可以将已经创建的 Angular 项目与 nodejs(express) 连接起来吗
- azure - Azure Log Analytics REST API 返回 502(错误网关)错误
- java - 如何让球从我的 JSlider 上“弹回”?(我已经让它反弹了)
- c++ - CUDA Vector Reduction 来处理长度小于 512 的向量?
- php - php中的亚马逊产品api