使用linux命令 根据序列ID快速提取fastq序列
程序员文章站
2024-03-04 08:01:35
...
做生信的人经常会接触到一些fastq数据,有时想要从fastq文件中提取出某些序列来查看。
一般情况可以使用grep命令,就可以实现
grep -A 3 seq_id fastq.file
# 匹配seq_id 并向下取3行
但是,如果需要的序列很多,在使用grep就会很慢了,所以这里给出了 awk 的命令,速度简直快的飞起。
awk -F ' ' 'NR==FNR {a[$1]=1; next} { if (a[substr($1,2)]) {print $0; getline b; print b ;getline b; print b ; getline b; print b ;}}' list.txt fastq.file
list.txt:中是要提取的序列名