У меня есть текстовый файл, который выглядит примерно так:
*FILESTART
line_a
line_b
line_c
*INCLUDE
file_A.key
file_B.key
*INCLUDE
file_1.key
file_2.key
file_3.key
*SOMETHING_ELSE
line_x
line_y
line_z
*END
Я хотел бы напечатать только строки между каждым оператором * INCLUDE и любым следующим оператором звездочки, в этом случае следующее:
file_A.key
file_B.key
file_1.key
file_2.key
file_3.key
Количество файлов .key может варьироваться, и имена не всегда заканчиваются на .key.
Код для этого будет реализован в существующем скрипте bash, поэтому он должен быть основан на awk, sed или чем-то еще в "стиле bash", а не на Perl, PHP, Python и т.д.
Я пробовал такие вещи, как
sed -n '/^*INCLUDE/,/^\*/p'
но он печатает только первый раздел и заканчивается второй строкой * INCLUDE.
Какие-либо предложения?