shell脚本以-rfc-3339格式增加时间

时间:2017-02-02 12:19:59

标签: linux shell scripting fedora

我想以-rfc-3339格式增加时间并使用以下命令:

`date --date="(date --rfc-3339=seconds) + 5 minutes"` 

但在将当前时间增加5分钟后,它会以标准格式显示增加的系统时间:

Thu Feb 2 20:06:30 IST 2017

我想要--rfc-3339格式的所需输出,即

2017-02-02 20:06:30+05:30

提前致谢。

1 个答案:

答案 0 :(得分:3)

这很简单。 --rfc-3339标志告诉date命令如何格式化其输出,但是你将放在输入日期的说明符中格式化日期。

在你的命令中

date --date="(date --rfc-3339=seconds) + 5 minutes"

--date="stuff"部分告诉命令您要显示的日期(而不是默认的“现在”)。 看起来就像你可能正在使用“取当前日期并添加五分钟”进行某种数学运算,但实际上()中的部分无效输入并被忽略。你可以说date --date="(colorless green ideas sleep furiously) + 5 minutes",你会得到相同的结果 - 或只是date --date="+5 minutes"

但当然,这是标准输出格式。要以RFC 3339格式获取它,只需在输入日期字符串中添加 之外的那个标志:

date --date="+5 minutes" --rfc-3339=seconds

然后你去。