gpt4 book ai didi

regex - 使用 bash 计算模式之间的行数/字符数

转载 作者:太空宇宙 更新时间:2023-11-04 05:34:29 25 4
gpt4 key购买 nike

我想计算每个对象的所有字符(ACGT)(这里是GeneID:1gi|479nf|NZ_AC14),以便我知道每个对象的长度(不需要计算A的数量,C的数量..)

>GeneID:1
ATGCGTTTGCGTTTGCAAATCGACTAGCTTTTGGCCCAAAGCGTGCTGCAAAAGTATGGA
AGTAAAGCTACCGTACGTAGCTAAGCCTACCGATCGATCGATCGATCGACGCCCCCCCCC
>gi|479
ATGGATTGGATGGAATCACAATTCAAGACATGTACGCATGGCTGCGACTGGAAG
>nf|NZ_AC14
ATGGCTAGATATGTCGTATGTTGGATGTTCACCATCAACAATCCCG

我有多个这样的文件,我想使用 bash 命令,以便一切都是自动化的,但我什至不知道从哪里开始执行此操作(主要是我如何在以 > 开头的行之后进行计数)

期望的输出是:

>GeneID:1 121
>gi|479 54
>nf|NZ_AC14 47

但如果我只有号码也没关系。

谢谢

最佳答案

使用awk:

awk -v RS='>[^\n]+' 'oRT{gsub("\n","");print oRT,length()}{oRT=RT}'  file

记录分隔符设置为以>开头的基因名称。记录的所有字段通过删除换行符连接在一起。然后打印记录的长度。

变量oRT设置为捕获上一行的记录终止符RT

关于regex - 使用 bash 计算模式之间的行数/字符数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50832786/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com