0
我使用的工作之后,我的shell脚本变量不是在shell脚本
LOGDATE='date +%m%d%y_%H%M'
,然后调用一样,在同一个shell脚本
$LOGDATE
以下,但在打印输出如下
echo $LOGDATE
date +%m%d%y_%H%M
谁能告诉我做错了什么?
我使用的工作之后,我的shell脚本变量不是在shell脚本
LOGDATE='date +%m%d%y_%H%M'
,然后调用一样,在同一个shell脚本
$LOGDATE
以下,但在打印输出如下
echo $LOGDATE
date +%m%d%y_%H%M
谁能告诉我做错了什么?
你错了单引号字符'
,用于转义字符串(没有变量扩大,反斜线不转义符,和分隔符被忽略)为执行标准输出作为一个子shell并返回内容反引号字符`
一个字符串。
LOGDATE=`date +%m%d%y_%H%M`
较新的bash版本还允许语法
LOGDATE=$(date +%m%d%y_%H%M)
可以认为更可读的,并允许表达的容易嵌套:
'LOGDATE =“$(日期+%M%d %y_%H%M)“' – anishsane
您是否试图在变量LOGDATE中存储'date +%m%d%y_%H%M'命令,或者您是否尝试执行该命令并存储其输出在'LOGDATE'中? –