简单的 bash 问题......我想,我是新手。
我从系统时间中减去日期
date_from=`date -d "30 minutes ago"`
之后,我想将结果格式化为$date_from
'yyyy-mm-dd'
我怎样才能做到这一点?
date -d "30 minutes ago" +%Y-%m-%d
不过,很可能是 30 分钟前是同一天 :)
您可以附加格式字符串:
date -d "30 minutes ago" +"%Y-%m-%d"
由于您不能保证 30 分钟前是同一天,因此您最好的解决方案是将当前日期/时间转换为 1970 年的秒数,减去 30*60 秒,然后将其转换回日期。
我可以在脚本中执行此操作,但不确定如何在一行中执行此操作。
就像是:
CURRENT=date +%S
CURRENTMINUS30=expr $CURRENT - (30*60)
OLD = date -d@`CURRENTMINUS30`
不过,这是未经测试的。我将尝试让脚本工作并发布它的内容,也许其他人可以在一行中完成。