将rna fasta的笔录ID和基因符号打印到新的文本文件中

时间:2019-07-01 18:02:40

标签: shell unix grep fasta

我想将转录本ID和基因符号从rna fasta文件的标题打印到文本文件。我想结束一个文本文件,第一列是笔录ID,第二列是基因符号。

标题示例:

>NM_001001258.1 Sus scrofa ATPase H+/K+ transporting beta subunit (ATP4B)
>XM_001924668.4 PREDICTED: Sus scrofa XK related 9 (XKR9), transcript variant X1, mRNA

我已经能够将成绩单ID打印到文本文件中

grep "^>" GCF_000003025.6_Sscrofa11.1_rna.fna | tr -d '>' | awk '{print $1}' > test.txt

我还能够将基因符号打印到文本文件中

grep "^>" GCF_000003025.6_Sscrofa11.1_rna.fna | awk -F'[()]' '{print $2}' > test.txt

我只是想知道是否有人可以帮助我将这一步骤组合成一个文件。我知道我可以合并文件,但是我想确保ID来自同一行。

2 个答案:

答案 0 :(得分:0)

使用sed

sed -rn '/^>/ s/^>([^ ]+).*\(([^)]+).*/\1 \2/gp'
XM_001924668.4 XKR9
NM_001001258.1 ATP4B

在这里,第一个/^>/是要告诉sed仅在匹配的行上执行操作。后来捕获了两个感兴趣的字符串,并使用\1\2对其进行了引用,称为回引用

答案 1 :(得分:0)

$ awk -F '[>)]| .*[(]' '{print $2, $3}' file
NM_001001258.1 ATP4B
XM_001924668.4 XKR9