En este tutorial, cubriremos los conceptos básicos de la date comando.
La date El comando muestra o establece la fecha del sistema. Se usa más comúnmente para imprimir la fecha y la hora en diferentes formatos y calcular fechas pasadas y futuras.
Usando la date de Linux Comando #
La sintaxis para la date El comando es el siguiente:
date [OPTION]... [+FORMAT]
Para mostrar la fecha y la hora actual del sistema con el formato predeterminado, invoque el comando sin opciones ni argumentos:
date La salida incluye el día de la semana, el mes, el día del mes, la hora, la zona horaria y el año:
Sat Jun 1 14:31:01 CEST 2019
Opciones de formato de fecha #
La salida de la date El comando se puede formatear con una secuencia de caracteres de control de formato precedidos por un + señal. Los controles de formato comienzan con el % símbolo y se sustituyen por sus valores.
date +"Year: %Y, Month: %m, Day: %d"
El %Y el carácter será reemplazado por el año, %m con mes y %d con el día del mes:
Year: 2019, Month: 06, Day: 02
Aquí hay otro ejemplo:
date "+DATE: %D%nTIME: %T"
DATE: 06/02/19
TIME: 01:47:04
A continuación se muestra una pequeña lista de algunos de los caracteres de formato más comunes:
%a- El nombre breve abreviado del día de la semana de la configuración regional (p. ej., Lun)%A- El nombre completo abreviado del día de la semana de la configuración regional (p. ej., lunes)%b- Nombre abreviado del mes abreviado de la configuración regional (p. ej., enero)%B- Nombre abreviado del mes largo de la localidad (p. ej., enero)%d- Día del mes (por ejemplo, 01)%H- Hora (00..23)%I- Hora (01..12)%j- Día del año (001..366)%m- Mes (01..12)%M- Minuto (00..59)%S- Segundo (00..60)%u- Día de la semana (1..7)%Y- Año completo (por ejemplo, 2019)
Para obtener una lista completa de todas las opciones de formato, ejecute date --help o man date en tu terminal.
Cadena de fecha #
El -d opción le permite operar en una fecha específica. Puede especificar la fecha como una cadena de fecha legible por humanos, como se muestra a continuación:
date -d "2010-02-07 12:10:53" Sun Feb 7 12:10:53 CET 2010
Usando el formato personalizado:
date -d '16 Dec 1974' +'%A, %d %B %Y' Monday, 16 December 1974
La cadena de fecha acepta valores como "mañana", "viernes", "viernes pasado", "próximo viernes", "próximo mes", "próxima semana", etc.
date -d "last week" Sat May 25 14:31:42 CEST 2019
También puede usar la opción de cadena de fecha para mostrar la hora local para diferentes zonas horarias. Por ejemplo, para mostrar la hora local a las 6:30 a. m. del próximo lunes en la costa este de Australia, debe escribir:
date -d 'TZ="Australia/Sydney" 06:30 next Monday' Sun Jun 2 22:30:00 CEST 2019 Anular la zona horaria #
La date El comando devuelve la fecha en la zona horaria predeterminada del sistema. Para usar una zona horaria diferente, configure la variable de entorno TZ a la zona horaria deseada.
Por ejemplo, para mostrar la hora de Melbourne, Australia, escribiría:
TZ='Australia/Melbourne' date Sat Jun 1 22:35:10 AEST 2019
Para enumerar todas las zonas horarias disponibles, puede enumerar los archivos en /usr/share/zoneinfo directorio o use el timedatectl list-timezones comando.
Convertidor de época #
La date El comando se puede utilizar como un convertidor de época. Época, o marcas de tiempo de Unix, es la cantidad de segundos que han transcurrido desde el 1 de enero de 1970 a las 00:00:00 UTC.
Para imprimir el número de segundos desde la época hasta el día actual, invoque date con el %s control de formato:
date +%s 1559393792
Para convertir segundos desde la época hasta la fecha, configure los segundos como una cadena de fecha con el prefijo @ :
date -d @1234567890 Sat Feb 14 00:31:30 CET 2009
Usando date con otros comandos #
La date El comando se usa con mayor frecuencia para crear nombres de archivo que contienen la hora y la fecha actuales.
El siguiente comando creará un archivo de copia de seguridad Mysql en el siguiente formato database_name-20190601.sql
mysqldump database_name > database_name-$(date +%Y%m%d).sql
También puedes usar la date comando en sus scripts de shell. En el siguiente ejemplo, estamos asignando la salida de date al date_now variables:
date_now=$(date "+%F-%H-%M-%S")
echo $date_now
2019-06-01-15-02-27
Mostrar la hora de la última modificación de un archivo #
La date comando con -r La opción muestra la última hora de modificación de un archivo. Por ejemplo:
date -r /etc/hosts Tue Jul 24 11:11:48 CEST 2018
Si desea modificar la marca de tiempo del archivo, use el touch comando.
Establecer la hora y fecha del sistema #
Configuración manual de la fecha y la hora del sistema con date No se recomienda el comando porque en la mayoría de las distribuciones de Linux, el reloj del sistema se sincroniza usando el ntp o el systemd-timesyncd servicios.
Sin embargo, si desea configurar el reloj del sistema manualmente, puede usar el --set= opción. Por ejemplo, si desea establecer la fecha y la hora a las 5:30 p. m. del 1 de junio de 2019, debe escribir:
date --set="20190601 17:30" Conclusión #
La date de Linux El comando muestra o establece la fecha y la hora del sistema.
Si tiene alguna pregunta o comentario, no dude en dejar un comentario.