El contenido de este artículo es:
¿Qué es una marca de tiempo de Unix?
Una marca de tiempo UNIX muestra un número único que corresponde a la fecha y la hora. Este único número muestra los segundos totales que han pasado desde el 1 de enero de 1970 a las 00:00:00 UTC. También llamamos a este número de tiempo único el Época unix. Las marcas de tiempo UNIX se utilizan en muchos lenguajes de programación diferentes para representar fechas y horarios en cualquier zona horaria.
Cómo convertir la marca de tiempo de UNIX hasta la fecha
En Linux hay diferentes métodos para convertir una marca de tiempo UNIX a una fecha o viceversa. En este artículo comenzaremos desde el método básico que está utilizando el comando de fecha en la ventana del terminal.
Método 1: Uso del comando de fecha
Para convertir una marca de tiempo UNIX en una fecha y hora legibles por humanos, podemos usar el comando de fecha en el terminal. La sintaxis para el comando de fecha es la siguiente:
con fecha de @
Por ejemplo, para convertir una marca de tiempo UNIX de 1676865654 a una fecha y hora legibles por humanos, ejecute el siguiente comando:
Fecha -d @1676865654
Como puede ver, la salida incluye detalles completos de la fecha y hora actuales, incluida la zona horaria, y el año.
Del mismo modo, también podemos generar valor de marca de tiempo para una fecha específica. Por ejemplo, el valor de la marca de tiempo para el 1 de enero de 2023, a las 12:00:00 a.m., se puede obtener utilizando el siguiente comando:
Fecha -d "2023-01-01 00:00:00" +%s
El siguiente comando devolverá las marcas de tiempo UNIX para la fecha actual en formato de nanosegundos:
fecha +%s%n
Ejemplo 1: Convierta una marca de tiempo UNIX a una fecha y hora en una zona horaria específica
Para convertir una marca de tiempo UNIX a una fecha y hora en una zona horaria específica, se seguirá la siguiente sintaxis del comando:
Tz =con fecha de @
Por ejemplo, para convertir una marca de tiempo UNIX de 1613475901 a una fecha y hora legibles por humanos en la zona horaria del este, ejecute el comando a continuación:
TZ = America/New_york Date -d @1676865654
Ejemplo 2: Convierta una marca de tiempo UNIX a una fecha solamente
Para convertir una marca de tiempo UNIX a una fecha solamente, puede usar el siguiente comando:
con fecha de @+'%Y-%m-%d'
Por ejemplo, si tenemos una marca de tiempo UNIX de 1613475901 y para convertirla en el formato de año durante el día (E.gramo. 2023-02-20) Podemos usar el siguiente comando:
fecha -d @ 1676865654 +'%y-%m-%d'
Esto generará la fecha correspondiente a la marca de tiempo UNIX de 1613475901:
Método 2: Uso del lenguaje de programación de Perl
Perl es un lenguaje de programación popular que se puede usar para generar marcas de tiempo UNIX en Linux.
Abra un editor nano usando:
nano
Ahora cree un script Perl simple que genera una marca de tiempo UNIX para la fecha y hora actuales:
#!/usr/bin/perl
Tiempo de impresión ();
Presione Ctrl + O, luego guarde este script como "marca de tiempo.por favor"Y presione Enter, luego presione Ctrl + X para guardar y salir:
Ahora haga este ejecutable ejecutando:
CHMOD +X TIMESTAMP.por favor
Ejecute el script con el comando "./marca de tiempo.PL ”para generar una marca de tiempo UNIX:
Método 3: Uso del lenguaje de programación de Python
Python es otro lenguaje de programación popular que se puede usar para generar marcas de tiempo Unix en Linux.
Primero, tenemos que instalar Python3 en Linux, para hacer ese comando Ejecutar:
sudo apto install python3
Ahora abra el editor de Nano usando:
nano
Cree un script Python simple que genera una marca de tiempo UNIX para la fecha y hora actuales:
#!/usr/bin/python3
tiempo de importación
Imprimir (int (tiempo.tiempo()))
Presione Ctrl + O, luego guarde este script como "marca de tiempo.py"Y presione Enter, luego presione Ctrl + X para guardar y salir.
El script anterior se puede hacer ejecutable por el siguiente comando:
CHMOD +X TIMESTAMP.py
Ejecute el script con el comando "./marca de tiempo.py "para generar una marca de tiempo de Unix.
Método 4: Uso de un script bash
Si necesita generar marcas de tiempo UNIX de una manera más compleja o automatizada, puede usar un script bash.
Abra el editor nano usando:
nano
Escriba el siguiente script en el editor que genera una marca de tiempo UNIX para la fecha y hora actuales:
#!/bin/bash
Echo $ (fecha +%s)
Presione Ctrl + O, luego guarde este script como "marca de tiempo.mierda"Y presione Enter, luego presione Ctrl + X para guardar y salir:
Ahora haga que este script se ejecute ejecutando el comando:
CHMOD +X TIMESTAMP.mierda
Ejecute el script con el comando "./marca de tiempo.sh "para generar una marca de tiempo UNIX:
Conclusión
Unix Timestamps muestran segundos totales aprobados desde el 1 de enero de 1970. Para generar marcas de tiempo UNIX en Linux, el comando de fecha se puede usar en la línea de comando pasando el argumento +%s. Alternativamente, también podemos crear un script bash o usar el script de lenguaje Pearl y Python para darnos marcas de tiempo para la fecha y la zona horaria exacta.