El comando date es un comando existente en sistemas Unix y tipo unix que muestra la hora y la fecha del sistema y el administrador también puede cambiarla.
Este comando apareció en la primera versión de Unix.
También cabe destacar que, debido al método de contar el tiempo, las versiones de este programa de 32 bits sufren del error del año 2038. Las versiones de 64 bits no sufren este problema.
Uso
date [OPCIÓN]... [+FORMATO]
Opciones
La única opción que reconoce la Single Unix Specification es -u, que sirve para mostrar o establecer la hora en UTC.
Otras opciones son -d, -f, -r, -R, -s y -u que son reconocidas en la mayoría de las implementaciones.
Formato
El formato se realiza anteponiendo + a la opción de formato.
%c
representación local fecha (martes 27 de enero 19:24:43 CET 2015)%d
día del mes (01 .. 31)%D
fecha (dd / mm / aa)%m
Indica el mes (01). También puede escribirse en mayúsculas.%j
días del año (001 .. 366)%p
indicador AM y PM en mayúsculas (en blanco en muchas configuraciones locales)%r
tiempo de 12 horas (hh: mm: ss [AP] M)%R
tiempo de 24 horas (hh: mm)%s
segundos desde unix epoch%S
segundos (00 .. 60), el 60 si es necesario para un segundo intercalar%t
un tabulador horizontal%T
hora en formato 24 horas (hh: mm: ss)%y
año en 2 dígitos (00 .. 99)%Y
año (2012)%Z
zona horaria (ejemplo GMT), o nada si no se puede determinar la zona horaria
Supongamos que deseo obtener esto
17:21:54 27/01/2015 CET
Si escribimos date +%T
obtendremos la hora con el formato 17:21:54
Veamos que hemos hecho en nuestro terminal.
Pepe-MacBook-Air:~ pepe$ date +%T
17:21:54
Si escribimos date +%T%t%d/%m/%Y
obtendremos la hora con el formato 17:21:54
del paso anterior, al que hemos agregado una tabulación ( %t
), y después hemos incluido la fecha con el formato 27/01/2015
, a continuación lo explicaré, pero antes veamos que hemos hecho en nuestro terminal.
Pepe-MacBook-Air:~ pepe$ date +%T%t%d/%m/%Y
17:21:54 27/01/2015
La fecha que hemos obtenido es 27/01/2015
, que se compone de
%d
, el día
/
nuestro separador entre día y mes
%m
es el mes
/
separador de mes y año
%Y
que es el año en formato 2015
<basies kska,zo qkkska oqs iqsk ioqikmsoc ap qpsmcoqpslcm qowd q
br />
Finalmente, y para los más puntillosos o para quienes así lo piden sus circunstancias, haremos que nuestro terminal indique también la franja horaria, y por una mejor estética estará separada por una tabulación %t
, y por supuesto añadimos %Z
, que es la instrucción final que daremos para que muestre la franja horaria
Veamos ahora todo en nuestro terminal...
Pepe-MacBook-Air:~ pepe$ date +%T%t%d/%m/%Y%t%Z
17:36:43 27/01/2015 CET
Ejemplos
Mostrar la fecha:
Pepes-MacBook-Air:~ pepe$ date
Tue Jan 27 21:21:51 CET 2015
Mostrar la fecha en UTC:
Pepes-MacBook-Air:~ pepe$ date -u
Tue Jan 27 20:22:08 UTC 2015
Mostrar los segundos transcurridos entre unix epoch:
Pepes-MacBook-Air:~ pepe$ date +%s
1422390213
Mostrar la fecha como en el procedimiento de la explicación anterior.
Pepes-MacBook-Air:~ pepe$ date +%T%t%d/%m/%Y%t%Z
21:17:23 27/01/2015 CET