【问题标题】:How do you expand variables in UNIX/BASH?如何在 UNIX/BASH 中扩展变量?
【发布时间】:2010-04-24 15:26:44
【问题描述】:

嵌套变量使我无法尝试更广泛地使用 BASH...请考虑以下几点:

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

我总是以

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

为什么?哈哈

以及如何获得我想要的东西 =/

我不是试图解析 ${${var}},而是如上所示的实际字符串

【问题讨论】:

  • 单引号内的字符串不展开。
  • mwuaha 我刚刚注意到了!大声笑

标签: bash unix variables


【解决方案1】:

使用双引号

export APP_DIR="${SYS_DIR}/app"

单引号将里面的所有内容视为文字,而不是评估。

【讨论】:

  • 另外,考虑通过谷歌查看“高级 Bash 指南”以了解所有 bash ;)
  • 但是,虽然变量用单引号括起来,但 alias 会进行评估。为什么?例如。 alias abc='cd ${HOME}'
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-03-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-08-24
  • 2015-12-13
相关资源
最近更新 更多