真珠

真珠

fastqファイルから最初の10個の読み取りヌクレオチドのみを選択しようとしています。

Input:

@RONSP:03887:07268
GTAGTTATCTGAAAGGATGCATGGGAAAATTTCAATATTTTTGTATCTGTTGAGGACTTTTTTGTGAGTGACTATATGGTCAATTTTGGAGGATTTGGTACTGAG  
+  
69;::5:<<<<<<3<5<<<;:67717<=0@@9;:5::;;;?-;::::;;;5=;;5:888777)79:::;A;;;<<<<<7<::5:;=/706:5:<=3;5;;;<;;:  

@RONSP:09389:11828 
GTGTGTCTCTGTTCAGTTTCTGCTTCCAGGATCTGTCTCTTGGTGAGAGTGTGGTCTTGAAGTCTCCCAGTATTATTTTATGAGGTGCAATGTGTGCTTTGATCTTTAGCAAAGTGTATTTAATGAATGTGGCTGCTCTTGCATTTAGAGCATAGACATTCAGAATTGAG  
+  
8:::<<<<;<;;5;;:;;1;;?::4:5:;5888::<;<<<6<6<>?;;;;;DD7?=D5<;6<<=<>=4><==<5<<<<0<<<AA7<<;;5=>==<<:::0:<>666+599990999::<<193944.42421443668849:88919;;;;;<<;;<9928;=;5<4:9:  




Output:

@RONSP:03887:07268
GTAGTTATCT 
+  
69;::5:<<<  

@RONSP:09389:11828
GTGTGTCTCT
+  
8:::<<<<;< 

ほとんどのツールは、読み取りの終わりからトリミングを開始します。ただし、読み取りの最初の10ヌクレオチドのみが必要です。

どんなアイデアにも感謝します。

ベストアンサー1

$ sed -E '/^[^@+]/s/^(.{10}).*$/\1/' fastq

@これは、またはで始まらないすべての行で交換を実行します+。置換は、行全体を行の最初の10文字にのみ置き換えます。

代替レシピ:

$ sed -E 's/^([^@+].{10}).*$/\1/' fastq

おすすめ記事