У меня есть HEX-файл, содержащий следующее, я хочу разделить их на два HEX-файла на основе адреса:
file_in.hex
@ 00000000
00 FC 00 20 89 01 00 00 D9 01 00 00 DB 01 00 00
ДД 01 00 00 ДФ 01 00 00 E1 01 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 E3 01 00 00
43 00 00 00 10 00 00 20 00 00 00 00
@ 200005FC
18 FB FF 7F 01 00 00 00
@ 20000604
00 00 00 00 80 F0 FA 02 80 F0 FA 02 00 00 00 00
00 00 00 00 FC 02 00 20 64 03 00 20 CC 03 00 20
если адрес равен или больше @ 20000000, остальная часть HEX сохраняется во второй файл HEX, поэтому результат должен быть таким:
file_out1.hex
@ 00000000
00 FC 00 20 89 01 00 00 D9 01 00 00 DB 01 00 00
ДД 01 00 00 ДФ 01 00 00 E1 01 00 00 00 00 00 00
00 00 00 00 00 00 00 00 00 00 00 00 E3 01 00 00
43 00 00 00 10 00 00 20 00 00 00 00
file_out2.hex
@ 200005FC
18 FB FF 7F 01 00 00 00
@ 20000604
00 00 00 00 80 F0 FA 02 80 F0 FA 02 00 00 00 00
00 00 00 00 FC 02 00 20 64 03 00 20 CC 03 00 20
Я совершенно новичок в Perl. Могу ли я использовать «сплит», чтобы сделать это? или я должен использовать цикл, чтобы сделать работу? Гораздо проще сделать с помощью awk или gawk?