在每次出现字符串时查找,替换和增加

vin*_*ent 2 bash replace sed bioinformatics increment

对于这个非常简单的问题,我对脚本相对较新,并提前道歉.我相信我的搜索非常彻底,但显然没有其他答案或烹饪书明确让我理解(就像在这里 - 仍然无法得到它).

我有一个由字母串组成的文件(DNA,如果你关心的话),每行一个字符串.在每个字符串上方,我插入了另一行来标识基础字符串.对于那些生物信息学家,我正在尝试用fasta格式编写测试数据集,也许你有工具?无论如何,我在每个">"之后加上一个明确的单词"num",意图使用bash增量器和sed创建一个标题每个字符串的唯一数字.例如,在data.txt中,我有......

> num,blah,blah,blah

ATCGACTGAATCGA

> num,blah,blah,blah

ATCGATCGATCGATCG

> num,blah,blah,blah

ATCGATCGATCGATCG

我希望它是......

> 0,等等,等等,等等

ATCGACTGAATCGA

> 1,等等,等等,等等

ATCGATCGATCGATCG

> 2,等等,等等,等等

ATCGATCGATCGATCG

解决方案可以是任何语言,只要它完整&&完成工作.我对sed,awk,bash和c ++有一点经验(小= =略高于没有经验).我知道,我知道,我需要学习perl,但我才刚开始.问题是:如何将"num"替换为每次替换时增加的数字?如果底层字符串与其他字符串相同则无关紧要.感谢您的帮助!

jm6*_*666 8

perl -ple 's/num/$n++/e' filename
Run Code Online (Sandbox Code Playgroud)

干跑1号,如果这样做,你想要什么