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:
[bash]
date
[/bash]
[text gutter=»false»]
mar feb 12 21:48:17 CET 2019
[/text]
Sabiendo esto, podemos programar cualquier script, cron o ejecutar comandos del modo:
[bash]
touch /tmp/mifichero-$(date +%d-%m-%Y).test
[/bash]
[bash]
ls -la /tmp/mifichero*
[/bash]
[text gutter=»False»]
-rw-rw-r–. 1 angel angel 0 feb 12 21:51 /tmp/mifichero-12-02-2019.test
[/text]
Además, el comando ‘date’ permite imprimir por pantalla la fecha y hora en infinidad de formatos:
[bash]
date +%T%n%F
[/bash]
[text gutter=»False»]
21:53:50
2019-02-12
[/text]
Adjunto también diferentes opciones de formato para usar con el comando ‘date’ (extracto del manual date)
[php gutter=»false»]
%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)
[/php]




ejemplo
para que aparezca
20210412_182930
$(date +%Y%m%d_%_H%M%S)
un saludo
Gracias quique.
Si, las posibilidades son infinitas.
Un saludo.