【问题标题】:How to remove the first three character from the fasta file header如何从fasta文件头中删除前三个字符
【发布时间】:2020-06-29 03:22:26
【问题描述】:

我有一个这样的 fasta 文件:

>rna-XM_00001.1 
actact
>rna-XM_00002.1
atcatc

如何删除“rna-”使其变为

>XM_00001.1 
actact
>XM_00002.1
atcatc

【问题讨论】:

    标签: linux trim cut


    【解决方案1】:

    您显示的是文件内容?那么 sed 应该可以做到这一点:

    sed 's/^>rna-/>/' < inputfile > outputfile

    解释:

    • sed 命令行的第一个字符是s,它告诉 sed 进行替换
    • / 是分隔符
    • ^ 告诉 sed 只查看行首
    • 下一个>rna- 是匹配行首的模式
    • 下一个> 是替换模式的替换

    如果您希望始终删除 > 之后的前四个字符,只要它们以 - 结尾,您可以使用:

    sed 's/^>...-/>/' < inputfile > outputfile

    解释:

    • 这与上面类似,除了在行首匹配的模式是>...-。该模式是一个正则表达式,其中 . 匹配任何单个字符。所以这个模式匹配任何以>开头的行,后跟任意三个字符,然后是-

    【讨论】:

    • 感谢您的详细解释。它完成了工作。
    猜你喜欢
    • 2022-11-14
    • 1970-01-01
    • 2016-11-01
    • 1970-01-01
    • 2013-03-29
    • 2014-03-21
    • 2011-11-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多