我必须将以下日期转换为秒,存储在变量中。
var_date=2017/02/16.10:09:59
我正在使用AIX,IBM Unix系统,以下命令无效。
date -d $var_date +%s
任何人都可以提出解决方案来解决这个问题吗?
答案 0 :(得分:1)
有日期字符串格式的要求,它是作为-d
选项的参数传递的:
它应该由DATE和TIME组成,只能是DATE或只有TIME部分
DATE
TIME
DATE TIME
DATE和TIME部分由空格或任何文字字符[a-zA-Z]分隔:
DATE TIME
DATETTIME
DATEATIME
DATEiTIME
...
字符串可以从DATE或TIME部分开始:
DATE TIME
TIME DATE
DATE由2或3个部分表示,并以'/'或'-'符号定界:
YYYY/MM/DD
YYYY-MM-DD
MM/DD
MM/DD/YYYY
YYYY/MM/DD
请注意,MM和DD是必填字段,月份应放在日期之前。 如果未定义年份,则考虑当前年份。 它还允许使用没有delititars的日期。在这种情况下,日期只能以以下格式显示:
YYYYMMDD
时间包含1到3个由“:”符号定界的部分:
HH
HH:MM
HH:MM:SS
如果没有DATE部分,则考虑当前日期。
答案 1 :(得分:0)
尝试为变量添加引号。 date -d“$ var_date”+%s
$ var_date=2017/02/16.10:09:59
$ date -d "$var_date" +%s
1487236199