Как вы расширяете переменные в UNIX / BASH? - PullRequest
3 голосов
/ 24 апреля 2010

Вложенные переменные помешали мне пытаться более широко использовать BASH ... рассмотрим следующее:

export SYS_DIR='/home/${LOGNAME}/sys'
export APP_DIR='${SYS_DIR}/app'

Я всегда получаю

> set
APP_DIR=/home/${LOGNAME}/sys/app

почему?lol

и как мне получить то, что я хочу = /

Я не пытаюсь разрешить $ {$ {var}}, а скорее реальные строки, как показано выше

1 Ответ

10 голосов
/ 24 апреля 2010

Используйте двойные кавычки

export APP_DIR="${SYS_DIR}/app"

Одинарные кавычки трактуют все внутри как буквальное, а не как оцененное.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...