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