El comando de fecha de Linux se usa para mostrar la fecha, hora, zona horaria, etc. También se usa para configurar la fecha y hora del sistema Linux. Generalmente, se utiliza para mostrar la fecha en diferentes formatos y calcular fechas a lo largo del tiempo.
Sintaxis:
date [OPTION]... [+FORMAT] date [-u|--utc|--universal] [MMDDhhmm[[CC]YY][.ss]]
Opciones
Las siguientes son algunas opciones útiles de la línea de comando del comando de fecha:
-d, --fecha=Cadena: Se utiliza para mostrar la hora descrita por STRING.
--depurar: Se utiliza para anotar la fecha analizada y proporcionar una advertencia sobre el uso controvertido al stderr.
-f, --file=FECHAFILE: Es similar a la opción '--date'.
-Yo[FMT], --iso-8601[=FMT]: Se utiliza para mostrar la fecha/hora en formato ISO 8601.
-R, --rfc-correo electrónico: Se utiliza para mostrar la fecha y la hora en formato RFC 5322. Por ejemplo, lunes 14 de agosto de 2006 02:34:56 -0600.
--rfc-3339=FMT: Se utiliza para mostrar fecha/hora en formato RFC 3339.
-r, --referencia=ARCHIVO: Se utiliza para mostrar la hora de modificación anterior del ARCHIVO.
-s, --set=Cadena: Se utiliza para establecer el tiempo descrito por STRING.
-u, --utc, --universal: Se utiliza para mostrar o configurar el UTC.
--ayuda: Se utiliza para mostrar el manual de ayuda.
--versión: Muestra la información de la versión.
Opciones de formato
%a: Se utiliza para mostrar el nombre abreviado del día de la semana (por ejemplo, domingo)
%A: Se utiliza para mostrar el nombre completo del día de la semana (por ejemplo, domingo)
%b: se utiliza para mostrar el nombre abreviado del mes (por ejemplo, enero)
%B: Se utiliza para mostrar el nombre completo del mes (por ejemplo, enero)
%C: Se utiliza para mostrar la fecha y la hora (por ejemplo, jueves 3 de marzo a las 23:05:25 de 2005).
%C: Se utiliza para mostrar el siglo; como %Y, excepto que omite los dos últimos dígitos (por ejemplo, 20)
%d: Se utiliza para mostrar el día del mes (por ejemplo, 01)
%D: Se utiliza para mostrar la fecha; igual que %m/%d/%y
%Es: Se utiliza para mostrar el día del mes, con espacios rellenados; igual que %_d
%F: Se utiliza para mostrar la fecha completa; igual que %Y-%m-%d
%gramo: Se utiliza para mostrar los dos últimos dígitos del año del número de semana ISO (ver %G)
%GRAMO: Se utiliza para mostrar el año del número de semana ISO (ver %V); normalmente es útil sólo con %V.
%h: Es similar a la opción '%b'.
%H: Se utiliza durante una hora (00..23)
%I: Se utiliza durante una hora (01..12)
%j: Se utiliza para el día del año (001..366)
%k: Se utiliza para la hora, espacio rellenado (0..23); igual que %_H
%l: Se utiliza para la hora, espacio rellenado (1..12); igual que %_I
%metro: Se utiliza para el mes (01..12)
%METRO: Se utiliza para el minuto (00..59)
%norte: Se utiliza para una nueva línea.
%NORTE: se utiliza durante nanosegundos (000000000..999999999)
%pag: Se utiliza para pasar el equivalente de AM o PM; en blanco si no se sabe
%PAG: Es similar a la opción '%p', pero se pasa en minúsculas.
%q: Se utiliza para mostrar el trimestre de un año (1..4)
%r: Se utiliza para mostrar la hora del reloj de 12 horas (por ejemplo, 11:11:04 p.m.)
%R: Se utiliza para mostrar la hora del reloj de 24 horas en una hora y un minuto; igual que %H:%M
%s: se utiliza para mostrar los segundos desde 1970-01-01 00:00:00 UTC
%S: se utiliza para mostrar el segundo (00..60)
%t: Se utiliza para una opción de pestaña.
%T: se utiliza para mostrar la hora; igual que %H:%M:%S
%en: Se utiliza para el día de la semana (1..7); 1 es lunes
%EN: Se utiliza para un número de semana del año, cuenta el domingo como primer día de la semana (00..53)
cuantas semanas en un mes
%EN: Se utiliza para el número de semana ISO, cuenta el lunes como primer día de la semana (01..53)
%En: Se utiliza para el día de la semana (0..6); 0 es domingo
%EN: Se utiliza para el número de semana del año. Cuenta el lunes como primer día de la semana (00..53).
%X: Se utiliza para la representación de la fecha (por ejemplo, 31/12/99)
%X: Se utiliza para la representación del tiempo (por ejemplo, 23:13:48)
%y: Se utiliza para los dos últimos dígitos del año (00..99)
%Y: Se usa por un año.
%Con: Se utiliza para la zona horaria numérica +hh:mm (por ejemplo, -0400)
%:Con: Se utiliza para la zona horaria numérica +hh:mm (por ejemplo, -04:00)
%::Con: Se utiliza para la zona horaria numérica +hh:mm:ss (por ejemplo, -04:00:00)
%:::Con: Se utiliza para la zona horaria numérica con ':' con la precisión necesaria (por ejemplo, -04, +05:30)
%CON: Se utiliza para la abreviatura alfabética de zona horaria (por ejemplo, EDT)
Ejemplos del comando de fecha
Veamos los siguientes ejemplos del comando de fecha:
- Cómo utilizar el comando de fecha
- Formato de fecha
- Cadenas de fecha
- Anulación de la zona horaria
- Comando de fecha como convertidor de época
- Mostrar la hora de la última modificación de un archivo
- Establecer la fecha y hora del sistema
Cómo utilizar el comando de fecha
El comando de fecha es una utilidad básica y se puede utilizar ejecutándolo sin ningún argumento. Mostrará la fecha y hora actuales. Considere el siguiente comando:
date
El comando anterior mostrará la fecha y hora actuales del sistema. Considere el siguiente resultado:
Formato de fecha
Podemos mostrar la fecha en el formato que elijamos. Hay varias opciones para mostrar la fecha en un formato específico. Se pueden ver diferentes formatos de fecha en la lista anterior de opciones de formato. Considere los siguientes comandos:
date '%a %d-%m-%y' date +'%A %d-%m-%y' date +'%b %d-%m-%y' date +'%B %d-%m-%y' date +'%c %d-%m-%y' date +'%C %d-%m-%y'
De los comandos anteriores, la fecha se mostrará en diferentes formatos. Considere el siguiente resultado:
Al igual que los comandos anteriores, hay otras opciones disponibles. Vea la lista completa de las opciones de formato anteriores.
Cadenas de fecha
Podemos especificar la fecha en diferentes cadenas de fechas. La opción '-d' se utiliza para operar en una fecha específica. Considere el siguiente comando:
date -d '2020-06-06 12:10:53'
Del comando anterior, tenemos una fecha especificada en un formato diferente. Mostrará la descripción de la fecha y hora específicas. Considere el siguiente resultado:
También podemos utilizar el formato personalizado de la siguiente manera:
date -d '06 jun 2020' +'%A, %d %B %Y'
El comando anterior mostrará la fecha en el formato dado. Considere el siguiente resultado:
Además, podemos pasar cadenas como 'ayer', 'lunes', 'el lunes pasado', 'el próximo lunes', 'el próximo mes', 'el próximo año' y muchas más.
Considere los siguientes comandos:
date -d now date -d yesterday date -d tomorrow date -d 'next monday' date -d 'last monday'
Los comandos anteriores mostrarán las fechas en consecuencia. Considere el siguiente resultado:
Anulación de la zona horaria
De forma predeterminada, el comando de fecha muestra la hora según la zona horaria actual. Pero podemos cambiarlo configurando el Variable ambiental 'TZ.' El valor predeterminado de la variable 'TZ' se almacena en el archivo '/etc/localtime'. Después de cambiar el valor de la variable de entorno, podemos mostrar la hora de diferentes zonas horarias. Considere los siguientes comandos:
TZ='Australia/Melbourne' date TZ=+5:30 date
Los comandos anteriores mostrarán la hora según las zonas horarias determinadas. Considere el siguiente resultado:
Comando de fecha como convertidor de época
El comando de fecha también se puede utilizar para mostrar la hora de la época. El tiempo de época (tiempo Unix o marca de tiempo Unix o tiempo POSIX) es el tiempo (en segundos) que ha transcurrido desde el 1 de enero de 1970.
Para mostrar la hora desde la época hasta la fecha actual, ejecute el comando con la opción '%s' de la siguiente manera:
date +%s
El comando anterior mostrará el tiempo transcurrido desde la época. Considere el siguiente resultado:
Para convertir la hora a la fecha actual, anteponga los segundos con '@'. Considere el siguiente comando:
date -d @122222222
El comando anterior convertirá el tiempo (en segundos) al formato legible por humanos. Considere el siguiente resultado:
Mostrar la hora de la última modificación de un archivo
La opción '-r' se utiliza para mostrar la hora de la última modificación del archivo. Por ejemplo, para mostrar la hora de la última modificación del archivo 'Demo1.txt' ejecute el comando de la siguiente manera:
date -r Demo1.txt
El comando anterior mostrará la hora en que se modifica el archivo dado. Considere el siguiente resultado:
Establecer la fecha y hora del sistema
Podemos configurar la hora y la fecha del sistema usando el comando de fecha. Sin embargo, no se recomienda configurar la fecha y hora del sistema mediante el comando de fecha. Porque el reloj del sistema Linux se sincroniza mediante los servicios sytemd-timesyncd o ntp.
Para configurar la hora mediante el comando de fecha, use la opción '--set= time'. Por ejemplo, si queremos establecer la fecha y hora como '08:15 pm, 06 de junio de 2020', ejecutamos el comando de la siguiente manera:
date --set='20200606 22:15'
El comando anterior establecerá la hora especificada. Considere el siguiente resultado: