Unix 在linux中为序列文件fasta替换空格

Unix 在linux中为序列文件fasta替换空格,unix,grep,fasta,Unix,Grep,Fasta,我有一个输出文件,我想把它转换成I文件,在那里我可以提取整个序列 输出如下:(但在>前面没有“输入”,每行后面都有一个enter ">comp2_c0_seq1 len=265 path=[1:0-264] GTTTGAATGGTTTGTGGTTCTGCCTTTGACAAACTGATCATAGTGGAATAATAAGGGAAC ATGAAGAAATTCCAAGCCCATTGATTTTCTCTTGAGACCAATTAGGTAAAGTCACTCAAA ATTTTTGAGAGTGGATGCTCA

我有一个输出文件,我想把它转换成I文件,在那里我可以提取整个序列

输出如下:(但在>前面没有“输入”,每行后面都有一个enter

">comp2_c0_seq1 len=265 path=[1:0-264]
GTTTGAATGGTTTGTGGTTCTGCCTTTGACAAACTGATCATAGTGGAATAATAAGGGAAC
ATGAAGAAATTCCAAGCCCATTGATTTTCTCTTGAGACCAATTAGGTAAAGTCACTCAAA
ATTTTTGAGAGTGGATGCTCAGAGGTAACACTTTGGCATAGAATTGTTAAATAGCATGCA
CTTTAATGGAAGAATAGAATCATTAAAGATTGGTTGATAACAAGTCACAGTGTATTTAAC
CATCATCACAGCAGATGTAGACAGA

">comp2_c1_seq1 len=203 path=[2794:0-202]
CAGCAGATGTAGACAGAAATGGCACCACTGCTTATGAAGGAAACTGGAACCCAGAAGCAC
ACCCTCCCCTCATTCACCATGAGCATCATGAGGAAGAAGAGACCCCACATTCTACAAGCA
CAAGTAAGCAAGATGGCGGTCGGCAGTTCTGGGTTAGATGAATTAGTAAAGACATTCCAG
CAATAGGGAAGATTTTGTTTAGA

">comp6_c0_seq1 len=424 path=[1744:0-423]
CCAGCTCCTACTCACCAGTCTCTCCGCATGGAGAAGTGGCCGTCATGGTCGACCTGTTCC
CAAGGGTGGCCTTGTGAGTGCAGGCTCTCCTCACCAGAGCTGAGGGCTTTGTGAACCTCT
GATGTCAATAGATGCCCCTCATCTTCCAGGAGGACAAAACAGGGCAAAGCAAGACATGGG
GTGAGAACAGGAGTGCATCAGTGGGGTTCCCCAAGCCTGTGTCAGGTCCGGATCTGGGTG
GGAGTTCCCTTCTGCGTCATCCAGGCCAGGCGAGTGGGCATCCTCCCTGAGCACCTGTGC
TTGGGGCTTTGCCTGTGTCAGTCAGGAAGACAGAGTACACGGAAGAGTTACCATTGCTTT
CAGAGCAAACCTTCCTTTGACATGCATTTAACACAGCACGGAGTGATTGACATGTGTCCT
TGTG

">comp7_c0_seq1 len=208 path=[22:0-207]
GGAAGGACAGCATGTTTTCCATCTCAAAGACAGGAAAGAGTTATCTCTTCCTCTGGGATC
CATCAGCATCCTGCCTACTCCTGCGTCACAGCACAGATCCTAACTGGCAAAATTATTAAT
CTCTCTTCCACTGAAATAGATACATCAGACAGATTCCTTTCTGACTGAAACTGTTCTGCT
GTGAAAGACTAACAACAAAGCAGATGCT

">comp8_c0_seq1 len=537 path=[1925:0-536]
TTAATAATTTAATTTTACTTTGAATATGTGTATATAAAATGCCTAATGTGATAAAAGTAG
AATATGCCTGGTTGAAGGAAACATAGAAAATTGAATTGCCACTGATTTGGCCTTTCCTTC
ATCTTTCATGGGGAGCCAGAGAGAATCTGGTTCAGAAGACAGACTCTAGAGTCAAGCAGC
TGGGGTTCAAATCTTGGCAACATTTCAGGGTGATTTTAAAAATATTTAACAGCTGGTAAT
GCTAGATGTCGACTTGTCAGAATGGATAAAGCCTGACATGACGTATATAGCCACACCAGC
ATATAATCAGCCCTGTCTCCACCACTTACTAGTAGTGTCTTTATCTGTAAGATAAAGATA
GCAATAGGCATTATCTCATAGGGGTTTTATGAGGATTAGGTGTAATAATATATATAAAGC
ACTTATGACAATGTTTGGAAGAAAGTGTCATTCAACATTAGATATCATCATCATTGTCAT
CATCGTGACTAATACTTGAGGAATTCCAGAATGTTATGGTTAGAATGGTAAAGTTCT
我想要的是:

> ">comp2_c0_seq1 len=265 path=[1:0-264] GTTTGAATGGTTTGTGGTTCTGCCTTTGACAAACTGATCATAGTGGAATAATAAGGGAACATGAAGAAATTCCAAGCCCATTGATTTTCTCTTGAGACCAATTAGGTAAAGTCACTCAAAATTTTTGAGAGTGGATGCTCAGAGGTAACACTTTGGCATAGAATTGTTAAATAGCATGCACTTTAATGGAAGAATAGAATCATTAAAGATTGGTTGATAACAAGTCACAGTGTATTTAACCATCATCACAGCAGATGTAGACAGA
每个序列都在同一行,所以我可以通过grep轻松提取序列。希望这是可能的


谢谢

您可以试试这个
sed

sed '/">comp/{:loop; N; /\n">comp/{P;D}; s/\n//g; b loop;}' yourfile.txt

awk
应能:

awk '{printf (/comp/&&NR>1?"\n":"")"%s",$0}' file
">comp2_c1_seq1 len=203 path=[2794:0-202]CAGCAGATGTAGACAGAAATGGCACCACTGCTTATGAAGGAAACTGGAACCCAGAAGCACACCCTCCCCTCATTCACCATGAGCATCATGAGGAAGAAGAGACCCCACATTCTACAAGCACAAGTAAGCAAGATGGCGGTCGGCAGTTCTGGGTTAGATGAATTAGTAAAGACATTCCAGCAATAGGGAAGATTTTGTTTAGA
">comp6_c0_seq1 len=424 path=[1744:0-423]CCAGCTCCTACTCACCAGTCTCTCCGCATGGAGAAGTGGCCGTCATGGTCGACCTGTTCCCAAGGGTGGCCTTGTGAGTGCAGGCTCTCCTCACCAGAGCTGAGGGCTTTGTGAACCTCTGATGTCAATAGATGCCCCTCATCTTCCAGGAGGACAAAACAGGGCAAAGCAAGACATGGGGTGAGAACAGGAGTGCATCAGTGGGGTTCCCCAAGCCTGTGTCAGGTCCGGATCTGGGTGGGAGTTCCCTTCTGCGTCATCCAGGCCAGGCGAGTGGGCATCCTCCCTGAGCACCTGTGCTTGGGGCTTTGCCTGTGTCAGTCAGGAAGACAGAGTACACGGAAGAGTTACCATTGCTTTCAGAGCAAACCTTCCTTTGACATGCATTTAACACAGCACGGAGTGATTGACATGTGTCCTTGTG
">comp7_c0_seq1 len=208 path=[22:0-207]GGAAGGACAGCATGTTTTCCATCTCAAAGACAGGAAAGAGTTATCTCTTCCTCTGGGATCCATCAGCATCCTGCCTACTCCTGCGTCACAGCACAGATCCTAACTGGCAAAATTATTAATCTCTCTTCCACTGAAATAGATACATCAGACAGATTCCTTTCTGACTGAAACTGTTCTGCTGTGAAAGACTAACAACAAAGCAGATGCT
">comp8_c0_seq1 len=537 path=[1925:0-536]TTAATAATTTAATTTTACTTTGAATATGTGTATATAAAATGCCTAATGTGATAAAAGTAGAATATGCCTGGTTGAAGGAAACATAGAAAATTGAATTGCCACTGATTTGGCCTTTCCTTCATCTTTCATGGGGAGCCAGAGAGAATCTGGTTCAGAAGACAGACTCTAGAGTCAAGCAGCTGGGGTTCAAATCTTGGCAACATTTCAGGGTGATTTTAAAAATATTTAACAGCTGGTAATGCTAGATGTCGACTTGTCAGAATGGATAAAGCCTGACATGACGTATATAGCCACACCAGCATATAATCAGCCCTGTCTCCACCACTTACTAGTAGTGTCTTTATCTGTAAGATAAAGATAGCAATAGGCATTATCTCATAGGGGTTTTATGAGGATTAGGTGTAATAATATATATAAAGCACTTATGACAATGTTTGGAAGAAAGTGTCATTCAACATTAGATATCATCATCATTGTCATCATCGTGACTAATACTTGAGGAATTCCAGAATGTTATGGTTAGAATGGTAAAGTTCT

对不起,这没有道理。