awk - 将 'u' 转换为 't' 而无需更改 FASTA 中的 header

我想弄清楚如何将我的混合 DNA/RNA multifasta 转化为

>header1
atcggtc
atgcgca
>useful header2
aucggca
uucacuu
ucucuca
>header3
agucuau
cuagggc
...

在不破坏 header 的情况下转换为纯 DNA 格式。我的知识结束于

sed 's/u/t/g'

但这很明显会影响标题。有没有办法避免使用 sed 更改 header ,或者我应该使用其他命令?我应该寻找什么?

最佳答案

使用 sed,很容易说“只在选定的行上执行此操作”。一般语法是 address command 其中 address 可以是一个正则表达式,只匹配第一个字符不是 > 的行.

sed '/^[^>]/s/u/t/g' file.fasta >newfile.fasta

第一个^表示行首;字符类 [^>] 匹配不是(换行符或)> 的单个字符。

Awk 以后可能更容易学习、阅读和内存。 Awk 中的相同脚本可能看起来像

awk '/^[^>]/{ gsub(/u/,"t") }1' file.fasta >newfile.fasta

最后的 1 不是拼写错误;这是“打印所有行”的 Awk 习惯用法。

关于awk - 将 'u' 转换为 't' 而无需更改 FASTA 中的 header ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60054547/

相关文章:

python - Pyspark - 将多列数据组合成一个跨行分布的列

python - 如何计算具有特定扩展名或名称的文件中的文件数?

r - 如何使用 token 在 R 中调用 API

javascript - 数组中的对象 数组中的对象 数组中的对象 JavaScript - 搜索

r - 提取第n个字符直到R中的字符串结尾

reactjs - 使用 react-sortable-hoc 拖动时丢失 tr 元素的样式

reactjs - SWR vs Isomorphic-unfetch 用于数据获取 Next.Js

php - 是否有一个 Wordpress php 函数可以只返回自定义 Logo 图像的 URL(

javascript - 使用 axios 使用 get 方法发送嵌套的 json 数据

c++ - 错误 : cannot add a default template argument