Журнал OpenVPN выглядит так:
OpenVPN
CLIENT LIST
Updated,Sat Jun 20 04:20:07 2015
Common Name,Real Address,Bytes Received,Bytes Sent,Connected Since
[ A .... ]
ROUTING TABLE
Virtual Address,Common Name,Real Address,Last Ref
[ B.... ]
GLOBAL STATS
Max bcast/mcast queue length,33
END
куда а также В выше перечислены хосты, отформатированные определенным образом.
У меня есть сценарий bash, который я буду использовать для обработки элементов в части, называемой «ROUTING TABLE» ( В ). Как мне эффективно отделить этот список хостов от остальной части документа в моем сценарии?
linux
bash
script
bash-scripting
string-manipulation
Lennart Rolland
источник
источник
Следующие СЕПГ команда
делает то, что вы хотите: -n подавляет поведение по умолчанию, которое заключается в печати каждой строки, выражение между одинарными кавычками выбирает диапазон строк, а затем печатает их (в этом смысл {п} ). Выбираемые диапазоны определяются с помощью совпадений (начального и конечного), разделенных сепаратрисами, в моем случае я использую косую черту / как сепаратриса; начальное и конечное совпадение с образцом должны быть разделены запятой, и \ [ используется, чтобы подчеркнуть буквальное значение квадратных скобок, то есть это не грамматическая структура, а настоящая открывающая квадратная скобка, которую нужно найти.
источник