使用sed命令替换Fastq文件头中的模式

时间:2015-03-11 05:40:34

标签: sed fastq

我有一个fastq文件,我需要根据三位一体的需要编辑它的标题。我的标题是这样的:

  1. @ SRR1561197。 1 .1 HWI-ST1379:100:C29NPACXX:7:1101: 2115:2122 length = 102
  2. @ SRR1561197。 2 .1 HWI-ST1379:100:C29NPACXX:7:1101: 2202:2120 length = 102
  3. @ SRR1561197。 3 .1 HWI-ST1379:100:C29NPACXX:7:1101: 2319:2125 length = 102
  4. @ SRR1561197。 4 .1 HWI-ST1379:100:C29NPACXX:7:1101: 2510:2121 length = 102
  5. 在上面的标题中,粗体文字会随着每个标题不断变化,其他文字保持不变。 现在我想要一次性替换所有标题,并使用导致以下标题的模式:

    @MexD1SRR1561197.1/1
    @MexD1SRR1561197.2/1 
    @MexD1SRR1561197.3/1
    @MexD1SRR1561197.4/1
    

    我使用了以下命令,但它没有改变任何东西:

    sed 's/ HWI.*/\/1/g' SRR1561197_1.fastq > change.fastq
    
    sed 's/ HWI.+/\/1/g' SRR1561197_1.fastq > change.fastq
    

    请帮助任何人?

1 个答案:

答案 0 :(得分:1)

我怀疑这就是你想要的:

sed 's|^@|@MexD1|;  s| HWI.*|/1|g' SRR1561197_1.fastq > change.fastq

请注意,HWT已更改为HWI