Timestamp en Linux Bash

Utilizando el comando "date" podemos obtener el timestamp Unix de la siguiente manera:

date +%s

Con este dato y el comando "bc" (la calculadora de la consola), podemos obtener timestamp concretos:

FINAL=`date +%s`             #:----> AHORA
INICIO=`echo $END-3600|bc`   #:----> HACE 1 HORA

echo $INICIO
echo $FINAL

FINAL=`date +%s`             #:----> AHORA
INICIO=`echo $END-86400|bc`  #:----> AYER A ESTA MISMA HORA - HACE 1 DIA

echo $INICIO
echo $FINAL

2 Respuestas

  1. staff

    Hola,

    Puedes consultar la ayuda del comando date en la consola ejecutando “man date”, en ella encontrarás todos los parámetros que controlan la representación de una fecha.

    O también puedes consultar alguna página online con el manual del comando, como por ejemplo:

    http://unixhelp.ed.ac.uk/CGI/man-cgi?date

    Un saludo.

  2. CbRay

    Muy interesante gracias por tu aporte, pero ahora viene el regreso, una ves que obtienes el valor como conviertes ese timestamp a una fecha legible, es decir:

    date +%s = 1355995063 = 20121220 = Thu Dec 20 09:17:43 UTC 2012

    date +%s-86400|bc = 1355908663 = ??? = ????

    aqui la fecha debe ser 20121219 ó Thu Dec 19 09:17:43 UTC 2012 como puedo obtener ese valor?