¿Comando de terminal para eliminar todas las imágenes en carpetas y subcarpetas?

2

Necesito un comando de terminal para eliminar todas las imágenes (* .jpg, * .png, * .gif, * .JPG, * .PNG, * .GIF) almacenadas en mi carpeta y sus subcarpetas, preservando la estructura de las carpetas. No necesito moverlos a la carpeta de basura.

Supongo que se necesitan algunas expresiones regulares, pero esto supera mis habilidades.

    
pregunta Kurt UXD 04.12.2014 - 15:31

1 respuesta

5

Para simplemente enumerarlos (para revisión / verificación):

find MYFOLDER -type f \( -iname '*.jpg' -o -iname '*.png' -o -iname '*.gif' \) -ls

Para moverlos a la Papelera:

find MYFOLDER -type f \( -iname '*.jpg' -o -iname '*.png' -o -iname '*.gif' \) -exec mv '{}' ~/.Trash/ \;

Para eliminarlos directamente (no hay forma de recuperarlos a menos que tenga una copia de seguridad):

find MYFOLDER -type f \( -iname '*.jpg' -o -iname '*.png' -o -iname '*.gif' \) -delete
    
respondido por el nohillside 04.12.2014 - 15:40

Lea otras preguntas en las etiquetas