使用sed / awk命令Fastq到fasta格式

时间:2013-10-23 00:35:21

标签: bash awk sed fastq

我有一个fastq格式的数据:

@HISEQ:157:C11RCACXX:6:1101:1522:2491 2:N:0:CGTACG
GTGCCNNNNNNNNNNNNNNNNNNNNNNNTGCGNNNNNNNNNNNNNNCNNGCAGATACTCGTANNNNNNNNNGNNNNNNNN
NNNNNNNNNNNNNNNNNNNNN
+
@BCFF###########################################################################
#####################
@HISEQ:157:C11RCACXX:6:1101:1668:2494 2:N:0:CGTACG
TCTTTNNNNNNNNNNNNNNNNNNNNNNNATTGNNNNNNNNNNNNNNTTNTGTTTTACGGTTTNNNNNNNNGCNNNNNNNN
NNNNNNNNNNNNNNNNNNNNN
+
C@CFF###########################################################################
#####################
@HISEQ:157:C11RCACXX:6:1101:2557:2492 2:N:0:CGTACG
CCTCTNNNNNNNNNNNNNNNNNNNNNNNGTTGNNNNNNNNNNNNNNCNNCAACACACTCCTCNNNNNNNNGCNNNNNNNN
NNNNNNNNNNNNNNNNNNNNN
+
CCCFF###########################################################################
#####################

我想用“+”使用awk命令拆分每个读取,但它没有用, 是否有简单的命令,看/ awk可以将其转换为fasta格式吗?

期望输出应为

>HISEQ:157:C11RCACXX:6:1101:1522:2491 2:N:0:
CGTACGGTGCCNNNNNNNNNNNNNNNNNNNNNNNTGCGNNNNNNNNNNNNNNCNNGCAGATACTCGTANNNNNNNNNGNNNNNNNN
NNNNNNNNNNNNNNNNNNNNN
>HISEQ:157:C11RCACXX:6:1101:1668:2494 2:N:0:
CGTACGTCTTTNNNNNNNNNNNNNNNNNNNNNNNATTGNNNNNNNNNNNNNNTTNTGTTTTACGGTTTNNNNNNNNGCNNNNNNNN
NNNNNNNNNNNNNNNNNNNNN
>HISEQ:157:C11RCACXX:6:1101:2557:2492 2:N:0:
CGTACGCCTCTNNNNNNNNNNNNNNNNNNNNNNNGTTGNNNNNNNNNNNNNNCNNCAACACACTCCTCNNNNNNNNGCNNNNNNNN
NNNNNNNNNNNNNNNNNNNNN

非常感谢!

2 个答案:

答案 0 :(得分:0)

您可以尝试以下

awk -f conv.awk input.txt

其中input.txt是您的输入数据文件,conv.awk

/@HISEQ/ { p=1; sub(/^@/,">"); sub(/:[^:]*$/,":"); print; next }
/^\+/ {p=0}
p==1 { print }

答案 1 :(得分:0)

awk '((/@/&&$0!~/#/)||$0!~/#/)&&$0!~/\+/' your_file

下面测试:

> cat temp2
@HISEQ:157:C11RCACXX:6:1101:1522:2491 2:N:0:CGTACG
GTGCCNNNNNNNNNNNNNNNNNNNNNNNTGCGNNNNNNNNNNNNNNCNNGCAGATACTCGTANNNNNNNNNGNNNNNNNN
NNNNNNNNNNNNNNNNNNNNN
+
@BCFF###########################################################################
#####################
@HISEQ:157:C11RCACXX:6:1101:1668:2494 2:N:0:CGTACG
TCTTTNNNNNNNNNNNNNNNNNNNNNNNATTGNNNNNNNNNNNNNNTTNTGTTTTACGGTTTNNNNNNNNGCNNNNNNNN
NNNNNNNNNNNNNNNNNNNNN
+
C@CFF###########################################################################
#####################
@HISEQ:157:C11RCACXX:6:1101:2557:2492 2:N:0:CGTACG
CCTCTNNNNNNNNNNNNNNNNNNNNNNNGTTGNNNNNNNNNNNNNNCNNCAACACACTCCTCNNNNNNNNGCNNNNNNNN
NNNNNNNNNNNNNNNNNNNNN
+
CCCFF###########################################################################
#####################
>
> nawk '((/@/&&$0!~/#/)||$0!~/#/)&&$0!~/\+/' temp2
@HISEQ:157:C11RCACXX:6:1101:1522:2491 2:N:0:CGTACG
GTGCCNNNNNNNNNNNNNNNNNNNNNNNTGCGNNNNNNNNNNNNNNCNNGCAGATACTCGTANNNNNNNNNGNNNNNNNN
NNNNNNNNNNNNNNNNNNNNN
@HISEQ:157:C11RCACXX:6:1101:1668:2494 2:N:0:CGTACG
TCTTTNNNNNNNNNNNNNNNNNNNNNNNATTGNNNNNNNNNNNNNNTTNTGTTTTACGGTTTNNNNNNNNGCNNNNNNNN
NNNNNNNNNNNNNNNNNNNNN
@HISEQ:157:C11RCACXX:6:1101:2557:2492 2:N:0:CGTACG
CCTCTNNNNNNNNNNNNNNNNNNNNNNNGTTGNNNNNNNNNNNNNNCNNCAACACACTCCTCNNNNNNNNGCNNNNNNNN
NNNNNNNNNNNNNNNNNNNNN
>