GNU/Linux >> Tutoriales Linux >  >> Linux

Formato de fecha y hora para script o variable de shell de Linux

Aprenda cómo dar formato a la fecha y la hora para usar en un script de shell o como una variable junto con diferentes ejemplos de formato.

Hay muchas veces que necesita usar la fecha en su script de Shell, p. para nombrar el archivo de registro, para pasarlo como una variable, etc. Por lo tanto, necesitamos un formato diferente de fechas que se pueda usar como una cadena o variable en nuestros scripts. En este artículo, veamos cómo usar la fecha en el script de shell y los diferentes tipos de formatos que puede usar.

  • Verifique el comando timedatectl para administrar fácilmente la fecha y la hora en Linux

¿Cómo usar la fecha en el script de shell?

Puede usar la fecha insertando la ejecución de shell dentro del comando. Por ejemplo, si desea crear un archivo de registro insertando la fecha actual en él, puede hacerlo de la siguiente manera:

root@kerneltalks # echo test > /tmp/`date +%d`.txt
root@kerneltalks # ls -lrt
-rw-r--r--. 1 root  root     5 Sep 10 09:10 10.txt

Básicamente, debe pasar el identificador de formato con +% hasta el comando de fecha para obtener el formato deseado de la salida. Hay un suministro de comando de fecha de identificador diferente.

Incluso puede guardar un formato de fecha específico en alguna variable como –

root@kerneltalks # MYDATE=`date +%d.%b.%Y`
root@kerneltalks # echo $MYDATE
10.Sep.2018

Diferentes variables de formato para el comando de fecha

Estos identificadores de formato son del comando de fecha man página:

%a     locale’s abbreviated weekday name (e.g., Sun)
%A     locale’s full weekday name (e.g., Sunday)
%b     locale’s abbreviated month name (e.g., Jan)
%B     locale’s full month name (e.g., January)
%c     locale’s date and time (e.g., Thu Mar  3 23:05:25 2005)
%C     century; like %Y, except omit last two digits (e.g., 20)
%d     day of month (e.g, 01)
%D     date; same as %m/%d/%y
%e     day of month, space padded; same as %_d
%F     full date; same as %Y-%m-%d
%g     last two digits of year of ISO week number (see %G)
%G     year of ISO week number (see %V); normally useful only with %V
%h     same as %b
%H     hour (00..23)
%I     hour (01..12)
%j     day of year (001..366)
%k     hour ( 0..23)
%l     hour ( 1..12)
%m     month (01..12)
%M     minute (00..59)
%N     nanoseconds (000000000..999999999)
%p     locale’s equivalent of either AM or PM; blank if not known
%P     like %p, but lower case
%r     locale’s 12-hour clock time (e.g., 11:11:04 PM)
%R     24-hour hour and minute; same as %H:%M
%s     seconds since 1970-01-01 00:00:00 UTC
%S     second (00..60)
%T     time; same as %H:%M:%S
%u     day of week (1..7); 1 is Monday
%U     week number of year, with Sunday as first day of week (00..53)
%V     ISO week number, with Monday as first day of week (01..53)
%w     day of week (0..6); 0 is Sunday
%W     week number of year, with Monday as first day of week (00..53)
%x     locale’s date representation (e.g., 12/31/99)
%X     locale’s time representation (e.g., 23:13:48)
%y     last two digits of year (00..99)
%Y     year
%z     +hhmm numeric timezone (e.g., -0400)
%:z    +hh:mm numeric timezone (e.g., -04:00)
%::z   +hh:mm:ss numeric time zone (e.g., -04:00:00)
%Z     alphabetic time zone abbreviation (e.g., EDT)

¡Usando combinaciones de lo anterior, puede obtener el formato de fecha deseado como salida para usar en el script de shell! Incluso puedes usar %n para nueva línea y %t para agregar una pestaña en las salidas que en su mayoría no son necesarias ya que la usará como una sola cadena.

Ejemplos de diferentes formatos de fecha

Para su conveniencia y listo para usar, a continuación enumeré combinaciones para diferentes formatos de fecha.

root@kerneltalks # date +%d_%b_%Y
10_Sep_2018

root@kerneltalks # date +%D
09/10/18

root@kerneltalks # date +%F-%T
2018-09-10-11:09:51

root@kerneltalks # echo today is  `date +%A`
today is Monday

root@kerneltalks # echo Its `date +%d` of `date +%B" "%Y` and time is `date +%r`
Its 10 of September 2018 and time is 11:13:42 AM

Linux
  1. 7 ejemplos de comandos de fecha de Linux para mostrar y configurar la fecha y hora del sistema

  2. convención de nomenclatura para shell script y makefile

  3. Alcance variable para scripts y funciones bash shell en el script

  4. Establezca la fecha y la hora del sistema usando C++ en Linux

  5. Obtener fecha y hora de inicio del sistema en Linux

Cómo encontrar la fecha y hora exactas de instalación de su sistema operativo Linux

Cómo almacenar un comando de Linux como una variable en el script de Shell

Cómo encontrar la fecha y hora de instalación del sistema operativo Linux

Cómo configurar la fecha y la hora en Linux

Imprimir el tiempo de ejecución de la secuencia de comandos de Shell en Linux

Cómo cambiar la fecha, la hora y la zona horaria en Linux Mint 20