Comment obtenir une date future de 3 minutes?

10

Je veux obtenir la date 3 minutes sur l'avenir. Par exemple, si "maintenant" est

01-Jan-70 00:00:00 GMT 

Je veux obtenir

01-Jan-80 00:03:00 GMT

Comment dois-je procéder? Je travaille avec busybox linux.

michelemarcon
la source
7
J'aime comment ça fait 3 minutes et 10 ans ... subtile!
lornix

Réponses:

14

Avec GNU, datevous pouvez le faire aussi simplement que cela:

date --date="3min"

Mais busyboxne semble pas si intelligent (encore). La seule solution fiable que j'ai trouvée en utilisant bbest:

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

(vous n'avez pas besoin des busyboxpièces si aucune autre dateimplémentation n'est présente)

Si vous voulez une sortie formatée, vous pouvez ajouter ceci

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

Solution de travail sur Alpine Linux

date -d@"$(( `date +%s`+180))"
Peder
la source
Veuillez expliquer votre commande, son fonctionnement, etc. Aussi, pourquoi la solution originale ne fonctionne-t-elle pas pour vous?
LinuxSecurityFreak
1

J'ai dû définir la date pour +2 heures sur le système d'exploitation busybox sur mon routeur ma commande:

date "$(date +%m%d"$(( `date +%H`+2 ))"%M%Y.%S)"
user63180
la source