Nos encontramos ante la siguiente situación: tenemos en una ruta determinada, formada por varias carpetas, un tipo de fichero que queremos borrar conservando el resto.
La solución si hablamos de dos carpetas y tres ficheros es hacerlo a mano, si tenéis más carpeta o más ficheros, debéis usar la solución que abajo os propongo y que hace uso de las bondades de la terminal.
Si no estáis seguros de lo que vais a hacer lo mejor es que pida confirmación entre borrado y borrado.
Veamos un ejemplo: queremos borrar todos los ficheros PDF que existen en nuestro directorio actual y en todos sus hijos:
find . -type f -name "*.pdf" -exec rm -i {} \; Si estáis muy seguros, podéis quitar la confirmación. Otro ejemplko, esta vez borrando ficheros jpg de una ruta en concreto (y todos sus hijos):
find /home/usuario/imagenes -type f -name "*.jpg" -exec rm -f {} \; Seguro que alguna vez tendréis que usar algo así. Si tenéis dudas, preguntad en los comentarios.
Ver comentarios
¿Qué significan esos carcteres raros?
Significan que el autor la ha liado al copiar-pegar. Quizá sea un problema de coificación
Gracias por comentarlo, el plugin que usamos (que por cierto es genial) para colorear la sintaxis, falla cuando le metes caracteres no UTF-8. Ya está arreglado :)
es justo lo que estab buscando, pero la terminal me responde:
find: falta un parámetro para «-exec»
Prueba a escribirlo a mano, a ver si al copiar y pegar se han incluido caracteres extraños.
gracias. Lo resolví agregando una "" al final de la linea, Antes de ";".
Por si no soy claro:
-exec (los comandos que necesites" ;
Gracias por compartir :)
Don Javier, consulta sobre el array_push, debo hacer un mantenedor de usuarios con sus prefiles y por ende cada uno de ellos pueden entrar solo a las direcciones que se les asigno, con esta modalidad de array puedo entregar variables para un tipo de elementos: ejemplo
$AdminGen = array();
array-push(AdminGen,1,2,3,4,5,6,7,8,9,); el primer elemento es el perfil a uar y los elementos sifuientes serian las paginas a cargar, se puede hacer esta bien o que falta, gracias