Вопрос: Есть файл, в нем есть заголовок, данные, завершающие данные. Нужно выделить только данные. Для заголовка и завершающих данных известно, сколько строк они занимают.
Есть команды head и tail, но они выделяют из файла заголовок или конец. А нужны команды выделения "середины".
Каким средством решить проблему?
Ответ:
Если известна длина средней части (в строках), можно воспользоваться командой
sed -n '6,9p' file.txt
где 6 - строка, с которой начинать, 9 - сколько строк выводить
Если известно, сколько строк надо пропустить сначала и с конца, то
tail -n +N
отдаст строки кроме первых N-1.
head -n -N
отдаст строки кроме последних N.
Итого:
head -n -3 file | tail -n +2