返回多個結果這是我的問題:的grep -A1 -f比它應該
我有遺傳數據的FASTA文件像這樣(my.fasta
):
>TR1|c0_g1_i1
GTCGAGCATGGTCTTGGTCATCT
>TR2|c0_g1_i1
AAGCAGTGCAGAAGAACTGGCGAA...
我也有一個列表名稱這是my.fasta文件的一個子集,我想拉出序列爲他們(names.list
):
TR3|c0_g1_i1
TR4|c0_g1_i1
我想是這樣的:
>TR3|c0_g1_i1
CGGATCATGGTCTTGGTCAAAA
>TR4|c0_g1_i1
ATTGGGGGTTTTAAACTGGCGAA...
我做:grep -A1 -f names.list my.fasta | grep -v "^--$" > new.fasta
但是!我有姓名在我的names.list
和當我做時grep -c ">" new.fasta
我得到。
我已經grep ">" new.fasta | cut -d' ' -f1 | tr -d '>' > new.names.list
然後cat names.list new.names.list > names.all.list
和sort names.all.list | uniq -c | grep " 1 " | | sed -r 's/ 1 //' > names.extra.list
並結束了額外的514名。他們是如何到達那裏的?!
名稱列表整個my.fasta:http://speedy.sh/kzqKr/names.list
感謝:http://speedy.sh/PQpdD/names.myfasta.list 名稱爲我想要的子集列表!
將文件上傳到某個地方並將其鏈接添加到您的問題中。 – Cyrus
你在'my.fasta'中有沒有像「TR3 | c0_g1_i10」這樣的名字?如果你這樣做了,幾個名字可以用'names.list'中的一個名字來匹配。你可以給一些額外的名字嗎? –
每個名字都是獨一無二的,因爲它們都代表獨特的成績單。由於研究結果未發佈,因此我無法上傳文件。我查了幾個額外的名字,他們不在names.list文件中。 – user261007