Я пытаюсь использовать awk для разделения файла при каждом появлении разделителя, но в начале я всегда получаю пустой файл и не могу понять, почему.
Данные, которые мне нужно разбить на несколько файлов, имеют формат, подобный следующему:
----------
aaa
bbb
----------
ccc
ddd
----------
eee
fff
----------
ggg
Первый полученный файл должен содержать:
----------
aaa
bbb
----------
ccc
ddd
Разделитель всегда одинаков (знак «минус» 10 раз).
Я сейчас пытаюсь сделать это так:
awk -v RS='[-]{10}' '{i++} {file = sprintf("temp-%s", int(i/2)); print >> file;}'
Однако первый файл, который я получаю (temp-0), всегда содержит пустую строку и ничего больше.
Кроме того, исходный файл не начинается с пустой строки и не имеет содержимого (они были удалены ранее).
Кто-нибудь может помочь, пожалуйста?