У меня есть такой файл:
@SRR5874687.1.171.2 length=100 1 /1
CACCGAACTGAAGACATGCGTCATCACCGAAGATTTCAACTAAAGCTGGCATGTGCCATACGTGAATACCACCTGAAGCAACTGGCATAACACCTGGCAT
+
@@@DFFDDHBFHDHGBFG@@C<@F>??CFHIH0??FFIGII<BBC@FCFCHGH.7777=D;AHEFB@?7;;>BEC;@CCCC??ACBCCCCCCC?CC@?CC
@SRR5874687.1.172.2 length=100 2 /1
CTGGACAACGCGCCGCAATATTGCAGCTTATTAGTTTGGTGATGAGAGGACTCGCGCAACCGGCACACGCGGTTTCAGCACGTGCACAACATGTACAGAC
+
?@@FBDDDFHDHHJJJIGHIIJJGGHIGI?FH<DFHJJJCF@GHFHGHIGHHEEEDDDDDDDDDDDDDD@BBBBDDEDDDDDBDDDDDDDDDDDEEEECB
@SRR5874687.1.173.2 length=100 3 /1
GTTAAAGTAGTATTGGTATTAAATTTTGTACGACGTGGGAAAATTAAACCATCTTTTTTAATAAAACGTTTTCTATGGTATTTACGACGTGGTTTAACAC
+
BBCDDDDDHHHHHJJJHIHJHJEJJJJJHEGGEHIHIJJGIHIFHGGEIGIHIIJJJJJIEHGEH@EEBDFFEED@CCCDCEFDDDBDD@DDBDDCCCC>
Внутри файла я бы хотел редактировать каждую строку, начинающуюся с "@SRR". В этой строке после константы «@ SRR5874687.1.17X.2», где X - это число, которое увеличивается на 1 в каждой следующей строке, я хочу добавить пробел и X, а затем константу / 2, поэтому результат будет this: "@ SRR5874687.1.17X.2 X / 2 length = 100". (например: "@ SRR5874687.1.171.2 1/2 длина = 100" и "@ SRR5874687.1.172.2 2/2 длина = 100")
Я свободен sh новичок с использованием awk и регулярное выражение, но до сих пор мне удалось получить "@ SRR5874687.1.17X.2 length = 100 X / 2", и я только не знаю, как поставить его до "length = 100".
Я использовал Метод awk:
awk '/^@SRR/{$0=$0" "(++i) " /2"}1' test.txt > out.txt