我正在 bash 中使用一个 fasta 文件,该文件的标题以“>”开头,以“C”或“+”结尾。就像这样:
>chr1:35031657-35037706+
GGTGGACTAGCCAGTGAATGTCAACGCGTCCCTA
CCTAAGGCGATATCCGCAGCCGCCCGCGTCCCTA
>chr1:71979382-71985425C
agattaaatgaactattacacataaagtgcttac
ttacacataaagtgcttacgaactattacaggga
Run Code Online (Sandbox Code Playgroud)
我想使用 awk (gsub?) 或 sed 将标题的最后一个字符更改为“+”(如果它是“C”)。基本上我希望所有序列都以“+”结尾。没有C。
期望的输出:
>chr1:35031657-35037706+
GGTGGACTAGCCAGTGAATGTCAACGCGTCCCTA
CCTAAGGCGATATCCGCAGCCGCCCGCGTCCCTA
>chr1:71979382-71985425+
agattaaatgaactattacacataaagtgcttac
ttacacataaagtgcttacgaactattacaggga
Run Code Online (Sandbox Code Playgroud)
序列不需要改变任何东西。我认为这非常简单,但我自己很难使用其他帖子来做到这一点。我知道这awk '/^>/ && /C$/{print $0}'将打印以“>”开头并以“C”结尾的标题,但我不确定如何用“+”替换所有这些“C”。
感谢您的帮助!