вокруг вашей переменной:
у напечатать полный текст между конкретными словами. Вот мое требование.
«123.log» содержит текст ниже.
EBSPRODSTART
web logic server
Oracle database administration
Linux operating system
EBSPRODEND
Выход должен быть: -web logic server
Oracle database administration
Linux operating system
Коротко: -Над словом "EBSPROD" находится имя базы данных. Это значение будет входным аргументом. например
$ DBNAME=EBSPROD
$ echo $DBNAME
EBSPROD
$
Пытаюсь, как показано ниже, но это не печать какого-либо значения.
$ cat 123.log |sed -n '/^$DBNAMESTART$/,/^$DBANEMEND$/p'
Если я передаю значение DBNAME напрямую, я получаю вывод, как показано ниже.
$ cat 123.log |sed -n '/^EBSPRODSTART$/,/^EBSPRODEND$/p'
web logic server
Oracle database administration
Linux operating system
$
Примечание: - DBNAME не будет иметь одинаковое значение каждый раз, когда я выполняю скрипт.