命令中的Bash变量扩展

时间:2013-09-24 06:58:21

标签: bash

DATE="1 week ago"
date --date='$DATE'

不起作用。我怎样才能让它发挥作用?

我能做到:

DATE_CMD="date --date='$DATE'"
eval $DATE_CMD

但我不想将整个命令存储在变量中。

2 个答案:

答案 0 :(得分:2)

你只需要使用双引号来启用字符串插值:

date --date="$date"

答案 1 :(得分:2)

你是报价扩张的牺牲品。

适当的调用可能是:

DATE='1 week ago'
date --date="$DATE"

(注意双引号)