0

我需要将一个 4 列文件转换为每个条目 4 行。该文件是制表符分隔的。

当前文件按以下格式排列,每一行代表一个记录/序列(数百万行):

@SRR1012345.1   NCAATATCGTGG    #4=DDFFFHDHH    HWI-ST823:136:C24YTACXX
@SRR1012346.1   GATTACAGATCT    #4=DDFFFHDHH    HWI-ST823:136:C22YTAGXX

我需要重新排列,使四列显示为 4 行:

@SRR1012345.1
NCAATATCGTGG
#4=DDFFFHDHH
HWI-ST823:136:C24YTACXX
@SRR1012346.1
GATTACAGATCT
#4=DDFFFHDHH
HWI-ST823:136:C22YTAGXX

这样做的最佳方法是什么,最好是使用 bash 单线?谢谢您的帮助!

4

3 回答 3

4

您可以使用tr

< file tr '\t' '\n' > newfile
于 2015-06-20T23:56:45.540 回答
2

在这里使用 awk 非常清楚:

awk '{print $1; print $2; print $3; print $4}' file
于 2015-06-21T00:01:04.960 回答
2
$ awk -v OFS='\n' '{$1=$1}1' file
@SRR1012345.1
NCAATATCGTGG
#4=DDFFFHDHH
HWI-ST823:136:C24YTACXX
@SRR1012346.1
GATTACAGATCT
#4=DDFFFHDHH
HWI-ST823:136:C22YTAGXX
于 2015-06-21T13:33:16.627 回答