在我的脚本中,我将当前日期存储在一个变量中,但我希望该变量可以提前5分钟存储日期。
29/10/2014-10:47:06 to 29/10/2014-10:52:06
在Bash中有一种快速简便的方法吗?寻找一个解决方案,如果时间是10:59:00,也可以正常工作(识别进入下一个小时)。
我找到了一些Perl解决方案,但没有找到Bash。
答案 0 :(得分:3)
您可以使用-d
选项:
~$ date
mercredi 29 octobre 2014, 11:45:45 (UTC+0100)
~$ date -d '5 minutes'
mercredi 29 octobre 2014, 11:50:55 (UTC+0100)
如果你想使用变量:
~$ curr=$(date +%d/%m/%Y-%H:%M:%S)
~$ echo $curr
29/10/2014-11:59:50
~$ date -d "($cur) +5minutes" +%d/%m/%Y-%H:%M:%S
29/10/2014-12:04:54
答案 1 :(得分:1)
您需要使用-d选项,任何用户定义的日期:
date -d '2014/10/29 10:58:06 5 minutes'
Wed Oct 29 11:03:06 IST 2014
当前日期
date -d '5 minutes'
答案 2 :(得分:0)
看看date
:
date +%s
为您提供自1970年1月1日以来的秒数,添加5 * 60并将其转换回来
date --date='@<newTime>'
。
请参阅bash中的man date
。
答案 3 :(得分:0)
在Bash中,date
命令支持以下选项:
-a [-]sss.fff Slowly adjust the time by sss.fff seconds
(fff represents fractions of a second). This
adjustment can be positive or negative. The
system's clock is sped up or slowed down
until it has drifted by the number of
seconds specified. Only the super-user may
adjust the time.
所以,使用以下内容添加5分钟(= 300秒):
date -a 300