我在shell脚本中使用了以下内容
LOGDATE='date +%m%d%y_%H%M'
然后在相同的shell脚本中调用相同的内容
$LOGDATE
但打印输出如下
echo $LOGDATE
date +%m%d%y_%H%M
谁能说出我做错了什么?
答案 0 :(得分:3)
你错误的单引号字符'
,用于转义字符串(没有扩展变量,反斜杠不会转义字符,忽略分隔符)用于反引号字符`
执行子shell中的内容并将stdout作为字符串返回。
LOGDATE=`date +%m%d%y_%H%M`
较新的bash版本也允许使用语法
LOGDATE=$(date +%m%d%y_%H%M)
可以认为它更具可读性,并且可以更容易地嵌套表达式: