У меня есть текстовый файл, который содержит несколько разделов, и я хочу напечатать один из этих разделов.
Часть файла выглядит как
3. line 3
4. line 4
## Screenshots ##
1. line 1
2. line 2
3. line 3
4. line 4
## Changelog ##
3. line 3
4. line 4
Из этого я хочу получить все строки между ## Screenshots ## и началом следующего раздела. Здесь следующий раздел ## Changelog ##, но это может быть что угодно. Единственное, на что мы можем зависеть, это то, что он начнется с ##.
Из другого потока, я нашел следующий код
sed -e "H;/${pattern}/h" -e '$g;$!d' $file
который я изменил до
sed -e "H;/## Screenshots ##/h" -e '$g;$!d' readme.md
Теперь он извлекает все строки, начиная с ## Screenshots ##, но печатает все строки до конца файла.
Затем я передал его в другой sed, например
sed -e "H;/## Screenshots ##/h" -e '$g;$!d' readme.md | sed "/^##/q"
Но теперь он печатает только
## Screenshots ##
В любом случае я могу распечатать все строки в разделе скриншотов?