在脚本中我使用命令
CURRENT_DATE_tmp=`date -d $CURRENT_DATE +%Y%m%d`.
它给出了错误date: invalid date `+%Y%m%d'
可能是什么原因。我知道变量 CURRENT_DATE 有其值。
date -d $CURRENT_DATE
将打印对应的日期$CURRENT_DATE
多变的。
$) CURRENT_DATE="20140220"
$) date -d $CURRENT_DATE
Thu Feb 20 00:00:00 IST 2014
要将日期存储到变量中,请尝试使用
$) CURRENT_DATE_TMP=`date +%Y%m%d`
$) echo $CURRENT_DATE_TMP
20140704
EDIT
要将现有日期打印为新格式,请使用
$ CURRENT_DATE=`date +%Y-%m-%d`
$ echo $CURRENT_DATE
2014-07-04
$ date -d$CURRENT_DATE "+%Y%m%d"
20140704
更好的是,包起来$CURRENT_DATE
变量放在引号内,这样带空格的日期就不会破坏任何东西。
$ CURRENT_DATE=`date`
$ echo $CURRENT_DATE
Fri Jul 4 17:59:45 IST 2014
$ date -d"$CURRENT_DATE" "+%Y%m%d"
20140704
$ date -d$CURRENT_DATE "+%Y%m%d"
date: extra operand ‘4’
在当前的示例中,后面有一个空格-d
标志,将其删除。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)