Вот одно решение с awk
awk 'NR%2 ==0{gsub(/[^CTAG]/, "N")}1' file
результатом
SEQUENCE_1
AGCNGTNANTGCTG
SEQUENCE_2
AGGNGTNANTGCTC
Пояснение Как хотел OP, я только ищу каждую четную строку, чтобы применить изменение с помощью [ 1117]
NR/2 == 0
NR
- количество записей (строк здесь), прочитанных до тех пор, пока file
и gsub(/[^CTAG]/, "N")
не заменяются всеми символами, которые являются НЕ 'C', 'T', 'A', 'G'
[^CTAG]
^
есть отрицание
и awk
идет по expression
action
формат
здесь expression
равен NR/2==0
, и действие заменяет символы с N
на gsub
, которые не являются CTAG
У OSDev есть запись Wiki на Visual Studio, которая может обеспечить некоторое понимание, особенно со ссылками на блог записи Kaushik Srenevasan на предмет ядер PE, разработанных, чтобы быть загруженной основанными на мультиначальной загрузке загрузчиками (как GRUB).
Несколько большие, вещи широких штрихов необходимо знать:
kmain
'), должен иметь __declspec(noreturn)
на нем, и необходимо будет сделать __asm { hlt }
вместо возврата.