jueves, 21 de junio de 2012

Borrar ficheros con guión unix

Para borrar un fichero con guion en unix hay dos comandos

rm -- -foo        # -- es el escape de las opciones
rm ./-foo
siendo foo el archivo con guion

Nos puede ocurrir, sobre todo en sistemas aix, que al crear un fichero hemos pulsado una tecla que le mete un caracter al fichero que no vemos y por mucho que queremos borrarlo, no se borra. El fichero se vería igual "foo" pero realmente tiene otros caracteres "foo^]^]" por ejemplo.

En estos casos lo primero es ver si podemos listarlo, siempre antes de borrar.

ls -ltr foo

Si no podemos, vamos a probar con * y ?

ls -ltr fo*
ls -ltr fo?
ls -ltr *fo*
ls -ltr *f*
¿Por que listar siempre antes de borrar?
A no ser que estés 100% seguro, y nunca se está (esos segundos antes de pulsar la tecla con un borrado) conviene ver que es lo que es listado para finalmente cambiar el ls por el rm

Otra forma de eliminar archivos con caracteres raros si tienes instalado bash, es hacer uso de el.

rm fo(aqui pulsar tab)
y quedará de esta forma siendo el archivo como lo hemos descrito antes
rm foo^]^]

Todavía se nos puede resistir y no damos con el método.
Si podemos acceder vía ftp al servidor unix, usando un gestor ftp como puede ser filezilla, como siempre dependiendo de la distro de tú unix es posible que mirándolo desde este gestor puedas ver el nombre real que desde el terminal no te deja y puedas modificar el nombre.

No hay comentarios:

Publicar un comentario