Para resolverlo tendremos que usar algo de programación batch y usar este pequeño script:
SAVEIFS=$IFS;
IFS=$(echo -en "\n\b");
for i in *.*; do
ini=$(stat -c %y $i | cut -d ' ' -f 1);
fin=$(stat -c %y $i | cut -d ' ' -f 2 | cut -c 1-8);
ext=$(echo $i | cut -d '.' -f 2);
nom=$ini" "$fin.$ext;
nom=$(echo $nom | sed 's/\:/\./g');
if [ $ext != "sh" ]; then
mv "$i" "$nom";
fi
done;
IFS=$SAVEIFS
Crea un archivo llamado rn.sh con el código anterior y dale permisos de ejecucion con
sudo chmod +x rn.sh
Y listo ya puedes ejecutarlo con ./rn.sh
Las 2 primeras y la ultima linea (realacionadas con IFS) nos permiten manipular los nombres de archivos que contienen espacios.
sudo chmod +x rn.sh
Y listo ya puedes ejecutarlo con ./rn.sh
Las 2 primeras y la ultima linea (realacionadas con IFS) nos permiten manipular los nombres de archivos que contienen espacios.
En la linea ini= tomamos la fecha de modificación y le cortamos solo la fecha, y en la linea fin= tomamos la perte final (la hora) pero le quitamos los milisegundos.
En las partes donde dice "stat -c %y $i" podemos reemplazar %y por:
%z Ultimo cambio
%x Ultimo acceso
%w Fecha de creación
No hay comentarios:
Publicar un comentario