El date
comando se encuentra en el shell Bash, que es el shell predeterminado en la mayoría de las distribuciones de Linux e incluso en macOS. Este tutorial le muestra cómo dominar date
la línea de comandos y cómo puede usarlo en scripts de shell para hacer más que simplemente imprimir la hora.
Ejecute el date
comando para ver esta información. Imprime la fecha y hora actuales para su zona horaria:
fecha
El formato predeterminado parece un poco ridículo. ¿Por qué el año no se imprime después del mes y el día, en lugar de estar etiquetado al final, detrás de la zona horaria? No temas: si lo que quieres es controlar el formato de la salida, lo date
entrega con creces. Hay más de 40 opciones a las que puede pasar para date
indicarle que formatee su salida con la precisión que desee.
Para usar cualquiera de las opciones date
, escriba un espacio, un signo más +
y la opción que incluye el signo de porcentaje inicial. La %c
opción (datos y hora en formato de configuración regional) hace que la fecha y la hora se impriman en el formato normalizado asociado con su configuración regional. Su configuración regional está determinada por la información geográfica y cultural que proporcionó cuando instaló su sistema operativo. La localidad rige cosas como el símbolo de la moneda, el tamaño del papel, la zona horaria y otras normas culturales.
fecha +% c
El año aparece ahora en una posición más natural en la producción.
Puede pasar varias opciones a la date
vez. Una secuencia de opciones se denomina cadena de formato. Para ver el nombre del día ( %A
), el día del mes ( %d
) y el nombre del mes ( %B
), use este comando:
fecha +% A% d% B
Eso funcionó, pero es feo. No hay problema, podemos incluir espacios siempre que envuelva toda la cadena de formato entre comillas. Tenga en cuenta que +
va fuera de las comillas.
fecha + "% A% d% B"
Puede agregar texto a la cadena de formato, así:
fecha + "Hoy es:% A% d% B"
Desplazarse hacia arriba y hacia abajo por la date
página de manual en busca de la opción que desea pronto se vuelve agotador. Hemos dividido las opciones en grupos para ayudarlo a orientarse más fácilmente.
%r
hace, como se muestra a continuación. En una máquina Linux configurada para la configuración regional del Reino Unido y configurada en GMT, imprimió la hora, utilizando el reloj de 24 horas sin indicador AM o PM, como se esperaba.:
entre el %
signo y z
.::
entre el %
signo y z
.p
da salida a mayúsculas, una mayúscula P
da salida a minúsculas.Estos modificadores se pueden insertar entre %
y la letra de opción de otras opciones para modificar su visualización. Por ejemplo, %-S
eliminaría el cero a la izquierda para valores de segundos de un solo dígito.
Para obtener la última hora de modificación de un archivo, use la -r
opción (referencia). Tenga en cuenta que esto usa un -
(guión) en lugar de un %
signo y no requiere un +
signo. Pruebe este comando en su carpeta de inicio:
fecha -r .bashrc
La configuración TZ le permite cambiar su zona horaria durante la duración de un solo comando.
TZ = fecha GMT +% c
Habilitar un script de shell Bash para imprimir la hora y la fecha es trivial. Cree un archivo de texto con el siguiente contenido y guárdelo como gd.sh
.
#! / bin / bash HOY = $ (fecha + "Hoy es% A,% d de% B") TIMENOW = $ (fecha + "La hora local es% r") TIME_UK = $ (TZ = fecha BST + "La hora en el Reino Unido es% r") echo $ HOY echo $ TIMENOW echo $ TIME_UK
Escriba el siguiente comando para establecer los permisos de ejecución y hacer que el script sea ejecutable.
chmod + x gd.sh
Ejecute el script con este comando:
./gd.sh
Podemos usar el comando date para proporcionar una marca de tiempo. El script que se muestra creará un directorio con la marca de tiempo como su nombre. Luego copiará todos los archivos de texto de la carpeta actual en él. Al ejecutar este script periódicamente, podemos tomar una instantánea de nuestros archivos de texto. Con el tiempo, crearemos una serie de carpetas con diferentes versiones de nuestros archivos de texto.
Tenga en cuenta que este no es un sistema de copia de seguridad sólido, es solo para fines ilustrativos.
Cree un archivo de texto con el siguiente contenido y guárdelo como snapshot.sh.
#! / bin / bash # obtener la fecha y la hora fecha_stamp = $ (fecha + "% F-% H-% M-% S") # crea un directorio con ese nombre mkdir "$ date_stamp" # copiar los archivos de la carpeta actual en ella cp * .txt "$ date_stamp" # todo listo, informe y salga echo "Archivos de texto copiados al directorio:" $ date_stamp
Escriba el siguiente comando para establecer los permisos de ejecución y hacer que el script sea ejecutable.
chmod + x snapshot.sh
Ejecute el script con este comando:
./snapshot.sh
Verá que se ha creado un directorio. Su nombre es la fecha y hora en que se ejecutó el script. Dentro de ese directorio hay copias de los archivos de texto.
Con un poco de pensamiento y creatividad, incluso el date
comando humilde puede utilizarse de manera productiva.
El mundo del gaming ha experimentado un crecimiento exponencial en los últimos años. La…
Stokkete/Shutterstock.com ¿Sigue utilizando una unidad flash USB obsoleta para almacenar sus archivos? ¿Por qué no…
LG Los fabricantes siempre intentan mejorar el rendimiento de imagen de los monitores. Como resultado,…
Patty Chan/Shutterstock.com Si cree en lo que ve en las redes sociales, puede pensar en…
Seksan.TH/Shutterstock.com Los servicios de suscripción como Netflix, Game Pass y Spotify nos permiten consumir tantas…
fatmawati achmad zaenuri/Shutterstock El acceso a Internet, oa cualquier otra red, se rige por la…