gpt4 book ai didi

linux - 删除文本文件中的任何 AGTC 字符

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

我有一个文本文件,它应该包含 A、G、C、T 字符。然而,它有时有一些未知字符(很少),我想删除它们,如果它是 N,请将其替换为 A。另外,我想转义以 > 符号开头的行。

到目前为止,我只知道如何用 A 替换 N,我喜欢这样:

 sed "s/N/A/g" file1.fa >file2.fasta

但我不知道如何完成第一个任务。

示例:

初始文件

first line AGCCCMCCCN

目标文件应该是这样的

first line AGCCCCCCA

任何帮助将不胜感激。提前致谢!

最佳答案

您可以在 sed 上进行另一次替换

sed -e 's/N/A/g' -e 's/[^AGCT>]//g' -e 's/^>/\\>/' -e 's/[^\]>//g' file1.fa > file2.fasta

模式 1

-e 's/N/A/g'

您的模式首先用 A 替换 N 的所有实例。

模式 2

-e 's/[^AGCT>]//g'

其次,将所有非 A、G、C、T 或 > 的字符替换为空。

模式3

-e 's/^>/\\>/'

然后将字符串开头的 > 的所有实例替换为\>

模式 4

-e 's/[^\]>//g'

最后删除所有 > 前面没有\的字符

关于linux - 删除文本文件中的任何 AGTC 字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30664081/

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