bash中的日期格式

时间:2012-09-17 09:45:13

标签: linux bash

简单的重击问题......我想,我是新人。

我从系统时间减去日期

date_from=`date -d "30 minutes ago"`

之后,我想在'yyyy-mm-dd'中$date_from格式化结果

我该怎么做?

3 个答案:

答案 0 :(得分:5)

date -d "30 minutes ago" +%Y-%m-%d

但很可能,30分钟之前它是同一天:)

答案 1 :(得分:4)

您可以附加格式字符串:

date -d "30 minutes ago" +"%Y-%m-%d"

答案 2 :(得分:-1)

由于你无法保证30分钟前是同一天,你最好的解决方案是将当前日期/时间转换为1970年的秒数,减去30 * 60秒,然后将其转换为日期。

我可以在脚本中执行此操作,但不确定如何在一行中执行此操作。

类似的东西:

CURRENT=date +%S
CURRENTMINUS30=expr $CURRENT - (30*60)
OLD = date -d@`CURRENTMINUS30`

虽然未经测试。我会让脚本工作并发布它的内容,也许其他人可以在一行中完成。