我有一个shell脚本,我想在格林威治标准时间30分钟前获取日期和时间。
我的工作时间非常长,但部分时间似乎不起作用:
TZ = GMT + 1日期+%Y-%m-%d“”%H:%M:%S 2010-01-08 17:43:57
TZ = GMT + 2日期+%Y-%m-%d“”%H:%M:%S 2010-01-08 16:44:07
TZ = GMT + .5日期+%Y-%m-%d“”%H:%M:%S 2010-01-08 18:44:38
尝试了0.5 1.5的许多组合,没有部分小时工作,这很奇怪,因为有些时区不是一小时的完全偏移。有什么建议吗?
无法使用perl或ruby需要定期shell或mysql调用。
答案 0 :(得分:14)
date -u --date =“ - 30分钟”
答案 1 :(得分:8)
你也可以这样做:
TZ='UTC+0:30' date
答案 2 :(得分:1)
/usr/bin/env TZ='GMT' date -d '-30 minutes'
这是日期命令的版本,它是GNU coreutils的一部分。我不知道它是否适用于date
程序的其他版本。