1
目前我試圖解析以下文件類型(.fasta):grep的整個輸出搜索到的文件
>SeqID=0001__GroupID=0001
ATGCATGCATGCATGCATGCATGCATGCATGCATGCATGCATGC
>SeqID=0002__GroupID=0001
ATGCATGCATGCATGCATGCATGCATGCATGCATGCATGCATGC
>SeqID=0003__GroupID=0002
ATGCATGCATGCATGCATGCATGCATGCATGCATGCATGCATGC
>SeqID=0004__GroupID=0003
ATGCATGCATGCATGCATGCATGCATGCATGCATGCATGCATGC
>SeqID=0005__GroupID=0003
ATGCATGCATGCATGCATGCATGCATGCATGCATGCATGCATGC
>SeqID=0006__GroupID=0004
ATGCATGCATGCATGCATGCATGCATGCATGCATGCATGCATGC
爲了可以通過組ID中提取的序列。我有ID的文件以下列格式來提取:
GroupID=0002
GroupID=0003
我已經使用下面的命令
:
$ grep -A 1 -f groupIDs_to_extract.txt sequences_file.fasta > output.txt
這個想法是在輸入與每個ID來執行的grep文本文件,其中包含以下一行上下文以實際提取序列。所以,從我的例子中,輸出從第2組和第3的所有序列:
>SeqID=0003__GroupID=0002
ATGCATGCATGCATGCATGCATGCATGCATGCATGCATGCATGC
>SeqID=0004__GroupID=0003
ATGCATGCATGCATGCATGCATGCATGCATGCATGCATGCATGC
>SeqID=0005__GroupID=0003
ATGCATGCATGCATGCATGCATGCATGCATGCATGCATGCATGC
然而,它只是在輸出年底整個sequences_file.fasta,我不知道爲什麼。誰能幫忙?
你的'grep'二進制文件是否支持'grep -A 1'? – fedorqui
'groupIDs_to_extract.txt'中可能有空行(很可能在文件末尾)。空行代表「匹配所有內容」。 –
我意識到我的文件沒有按照我的想法格式化(請參閱我的答案)。但是,是的,我的'groupIDs_to_extract.txt'中確實有空行。只有我解決了這兩個問題後才能正常工作,所以謝謝! – Arthis