Tengo una gran cantidad (más de 400) de directorios llenos de fotos. Lo que quiero hacer es mantener los tamaños más grandes de estas fotos. Cada directorio tiene de 31 a 66 archivos.
Cada directorio tiene miniaturas y versiones más grandes, además de un archivo llamado example.jpg
Envié el archivo example.jpg fácilmente con:
rm */example.jpg
Inicialmente pensé que sería fácil eliminar las miniaturas, pero el problema es que no tienen nombres consistentes. El patrón típico era photo1.jpg
y photo1s.jpg
. Lo hice, rm */photo*s.jpg
pero terminó porque algunos de los archivos nombrados photoXs.jpg
eran en realidad más grandes y no más pequeños. Argh
Entonces, lo que quiero hacer es escanear cada directorio en busca de tamaño de archivo y eliminar (o mover) las miniaturas. Inicialmente pensé que simplemente ls -R
cada archivo y extraer el tamaño de cada archivo y guardarlos por debajo de un umbral. ¿El problema? En un directorio, el tamaño grande será de 1.1 MB y el pulgar es de 200k. En otro, el grande es de 200k y el pequeño de 30k.
Peor aún, los archivos realmente se nombran principalmente photo1.jpg
, por lo que simplemente ponerlos todos en la misma carpeta, ordenarlos por tamaño y eliminarlos en grupos ya no funcionaría sin renombrarlos, y si es posible, preferiría mantenerlos en sus carpetas.
Casi estaba decidido a hacer todo esto manualmente, pero luego pensé en preguntar aquí.
¿Cómo harías esta tarea?