¿Cómo obtener una fecha futura de 3 minutos?

10

Quiero obtener la fecha 3 minutos en el futuro. Por ejemplo, si "ahora" es

01-Jan-70 00:00:00 GMT 

Quiero tener

01-Jan-80 00:03:00 GMT

¿Cómo debería hacerlo? Estoy trabajando con busybox linux.

michelemarcon
fuente
77
Me gusta como son 3 minutos y 10 años ... ¡sutil!
lornix

Respuestas:

14

Con GNU datepuedes hacerlo tan simple como esto:

date --date="3min"

Pero busyboxparece no tan inteligente (todavía). La única solución confiable que se me ocurrió usar bbes:

busybox date -D '%s' -d "$(( `busybox date +%s`+3*60 ))"

(no necesita las busyboxpartes si no hay otra dateimplementación presente)

Si desea una salida formateada, puede agregar esto

busybox date -D '%s' +"%y%m%d%H%" -d "$(( `busybox date +%s`+3*60 ))"
rozcietrzewiacz
fuente
6

Solución de trabajo en alpine linux

date -d@"$(( `date +%s`+180))"
Peder
fuente
Explique acerca de su comando, en cuanto a cómo funciona y tal. Además, ¿por qué la solución original no funciona para usted?
LinuxSecurityFreak
1

Tuve que configurar la fecha para +2 horas en busybox OS en mi enrutador mi comando:

date "$(date +%m%d"$(( `date +%H`+2 ))"%M%Y.%S)"
usuario63180
fuente