Это для программирования оболочки UNIX. Он должен поддерживаться несколькими платформами UNIX, включая Solaris, Linux и AIX.
У меня есть такой сценарий: я должен прочитать из текстового файла строку, которая может содержать или не содержать переменную среды, которая может быть определена или не определена. Например:
<foo.bar> This error code was found: $(error_code)
У меня есть следующий код:
statement=$(sed -n $1'p' $messagefile)
echo $echo_flag $statement
$1 = номер строки, указанный для этой конкретной функции/скрипта.
$messagefile = имя файла журнала.
$echo_flag = "-e" в Linux, иначе пусто.
$(код_ошибки) = 42.
Вместо того, чтобы получать это при запуске:
<foo.bar> This error code was found: 42
Я все еще получаю это:
<foo.bar> This error code was found: $(error_code)
Как именно мне сообщить сценарию оболочки, что значение оператора должно оцениваться дальше, чем то, что сделал sed?