如何获得 3 分钟的未来日期?

mic*_*con 13 date busybox

我想获得未来 3 分钟的日期。例如,如果“现在”是

01-Jan-70 00:00:00 GMT 
Run Code Online (Sandbox Code Playgroud)

我想得到

01-Jan-80 00:03:00 GMT
Run Code Online (Sandbox Code Playgroud)

我该怎么做?我正在使用busybox linux。

roz*_*acz 17

使用 GNU,date您可以像这样简单地做到这一点:

date --date="3min"
Run Code Online (Sandbox Code Playgroud)

busybox似乎不那么聪明(还)。我想出的唯一可靠的解决方案bb是:

busybox date -D '%s' -d "$(( `busybox date +%s`+3*60 ))"
Run Code Online (Sandbox Code Playgroud)

busybox如果不存在其他date实现,则不需要这些部件)

如果你想要一个格式化的输出,你可以添加这个

busybox date -D '%s' +"%y%m%d%H%" -d "$(( `busybox date +%s`+3*60 ))"
Run Code Online (Sandbox Code Playgroud)


小智 9

alpine linux 上的工作解决方案

date -d@"$(( `date +%s`+180))"
Run Code Online (Sandbox Code Playgroud)

  • 请详细说明您的命令,例如它的工作原理等。另外,为什么原始解决方案不适合您。 (2认同)