Para poder crear un fichero con la fecha actual usando ‘date’, primero debemos de entender qué devuelve este ejecutable. El comando date, imprime o configura la fecha y hora del sistema:
date
mar feb 12 21:48:17 CET 2019
Sabiendo esto, podemos programar cualquier script, cron o ejecutar comandos del modo:
touch /tmp/mifichero-$(date +%d-%m-%Y).test
ls -la /tmp/mifichero*
-rw-rw-r--. 1 angel angel 0 feb 12 21:51 /tmp/mifichero-12-02-2019.test
Además, el comando ‘date’ permite imprimir por pantalla la fecha y hora en infinidad de formatos:
date +%T%n%F
21:53:50 2019-02-12
Adjunto también diferentes opciones de formato para usar con el comando ‘date’ (extracto del manual date)
%a el nombre local abreviado de la semana (p. ej., dom) %A el nombre local completo de la semana (p. ej., Domingo) %b el nombre local abreviado del mes (p. ej., ene) %B el nombre local completo del mes (p. ej. Enero) %c la fecha y hora local (p. ej., jue mar 3 23:05:25 CET 2005) %C siglo; como %Y, execpto que se omiten los dos últimos dígitos %d el día del mes (p. ej., 01) %D la fecha; igual que %m/%d/%y %e el día del mes, completado con espacios, igual que %_d %F fecha completa; lo mismo que %Y-%m-%d %g últimos dos dígitos del año del número de semana ISO (ver %G) %G año del número de la semana ISO (ver %V); útil normalmente con %V %h igual que %b %H la hora (00..23) %I la hora (01..12) %j el día del año (001..366) %k la hora, rellenando con espacios ( 0..23), igual que %_H %l la hora, rellenando con espacios ( 1..12), igual que %_I %m el mes (01..12) %M los minutos (00..59) %n un carácter de nueva línea %N nanosegundos (000000000..999999999) %p el equivalente local de AM o PM; blanco si es desconocido %P como %p, pero en minúsculas %r la hora local, en formato de 12 horas (p. ej. 11:11:04 PM) %R la hora y minutos, en formato de 24 horas; igual que %H:%M %s los segundos desde 1970-01-01 00:00:00 UTC %S los segundos (00..60) %t un tabulador horizontal %T la hora, lo mismo que %H:%M:%S %u día de la semana (1..7); 1 representa lunes %U el número de la semana del año con Domingo como primer día de la %V el número ISO de la semana del año con Lunes como primer día de la %w el día de la semana (0..6); 0 representa Domingo %W el número de la semana en el año con lunes como primer día de %x la representación local de la fecha (p. ej., 31/12/99) %X la representación local de la hora (p. ej. 23:13:48) %y los últimos dos dígitos del año (00..99) %Y el año %z zona horaria numérica en formato +hhmm (p. ej., -0400) %:z zona horaria numérica en formato +hh:mm (p. ej., -04:00) %::z zona horaria numérica en formato +hh:mm:ss (p. ej., -04:00:00) %:::z zona horaria numérica con : hasta la precisión necesaria %Z abreviatura alfabética de la zona horaria (p. ej., EDT)
ejemplo
para que aparezca
20210412_182930
$(date +%Y%m%d_%_H%M%S)
un saludo
Gracias quique.
Si, las posibilidades son infinitas.
Un saludo.