sed
- подходящий инструмент для этой работы. Я не очень понимаю, почему вы не должны его использовать. Если это домашнее задание, пожалуйста, подумайте о том, чтобы подать жалобу учителю.
$ sed -n -e '/^1/,/^5/p' -e '/^5/q' file.txt
1
2
3
4
5
Команды sed
выведут (p
) все строки между теми, которые соответствуют /^1/
и /^5/
. Она также завершит работу (q
), если найдет строку, соответствующую /^5/
. Вывод по умолчанию отключен (-n
).
$ sed -n '/^[1-9]/p' file.txt
1
2
3
4
5
6
7
8
1