20110525

Susto con 'mv *' en linux

Hoy he tenido un pequeño susto en mi equipo de casa, al intentar mover unos ficheros
Quería mover todos los logs a un directorio para mantener históricos, logs de mi aplicación, y he ido a teclear:

mv *.log ../_rutahistoricos_

en ese momento se me ha ido la mano y he tecleado:

mv *

y al pulsar enter... han desaparecido todos los .log y todo lo que había en ese directorio!

La mala suerte hace que, mi configuración, haga que deje las trazas en el HOME de mi usuario, con lo que se había perdido TODO mi contenido.

Perdido? No! Aquí hay un alma caritativa que dice básicamente que:

"si ejecutas 'mv *' se moveran todos los ficheros al último elemento, en caso de ser un subdirectorio, en otro caso se produce un error"

Efectivamente, en mi caso hay un directorio "workspace" (eclipse ;) ) donde estaba TODO mi home.
Curiosamente no se habían movido los directorios/ficheros ocultos.

Así que he podido recuperar todo lo que tenía, simplemente ejecutando de nuevo un mv, esta vez, con mucho cuidado!

He comprobado, además, que ejecutando mv * en un directorio cuyo último elemento no es otro directorio, se da el siguiente error:

mv: el destino, «applogxxxxxx.log», no es un directorio

20110507

SpringSecurity y Sitemesh : filters

A la hora de integrar SpringSecurity con Sitemesh, se me planteó un problema : al usar las tags de springsecurity, en los decoradores de sitemesh, no funcionaban.
La solución estaba a unos cuantos enlaces de Google:
aquí


La idea:
Al cambiar el orden de los filtros en el web.xml de la aplicación web, de forma que el filter de SpringSecurity actue antes que el de Sitemesh, todo funciona. Tiene sentido, ya que antes de que pueda usarse la información de SpringSecurity, debe haberse pasado por su filtro.