Fecha actual Jue Nov 21, 2024 11:48 pm
Moderadores: IOM60, laucsap60, klomp, Siniestro, Guillermo Luijk, Pablo Valido
Rafa18 escribió:Lo suyo sería ver si hay alguna manera de hacerlo de forma recursiva, soy un poco lento para esto y a estas horas no tengo cabeza, mañana intentaré buscar más información.
Gracias Guillermo.
aremesal escribió:Habría que saber porqué no podías abrir las fotos: lo de usar identify/convert con $? solo funciona si el archivo no es de imagen (cabecera corrupta).
He hecho unas pruebas corrompiendo JPGs (metiendo, cambiando y quitando bits con un editor hexadecimal), creo que este script hará lo que necesitas, ya que captura tanto imágenes corruptas como imágenes con cabecera corrupta: https://pastebin.com/wF7aLTP4
Simplemente pégalo en un archivo nuevo, dale permisos de ejecución y ejecútalo en el directorio raíz de tus fotos. El script recorre todos los directorios de forma recursiva, y deja un listado de corruptos en imagenes_corruptas.txt
Si son cientos de imágenes puede tardar un buen rato, tenle paciencia
Puede ser por caracteres especiales, habría que ver en cual se para... Habrá que cambiar el IFS.Rafa18 escribió:aremesal escribió:Habría que saber porqué no podías abrir las fotos: lo de usar identify/convert con $? solo funciona si el archivo no es de imagen (cabecera corrupta).
He hecho unas pruebas corrompiendo JPGs (metiendo, cambiando y quitando bits con un editor hexadecimal), creo que este script hará lo que necesitas, ya que captura tanto imágenes corruptas como imágenes con cabecera corrupta: https://pastebin.com/wF7aLTP4
Simplemente pégalo en un archivo nuevo, dale permisos de ejecución y ejecútalo en el directorio raíz de tus fotos. El script recorre todos los directorios de forma recursiva, y deja un listado de corruptos en imagenes_corruptas.txt
Si son cientos de imágenes puede tardar un buen rato, tenle paciencia [emoji38]
Hola Aremasal.
Tu script empieza bien pero se queda pillado en alguna carpeta.
Muestra:
Comprobando -...ling...-09-18........
Y de ahí no pasa por mucho que espere.
Por el nombre intuyo que es la carpeta llamada: 16-09-18 Castillo de Stirling - Destileria - Saint Andrews
No sé si los guiones influye en tu script y hace que se bloquee pero no creo ya que las demás carpetas tienen guiones también.
El caso es que falla algo.
Rafa18 escribió:Vale, hay otro fallo más.
Me temo que el script hace distición entre mayúsculas y minúsculas.
He tenido cámaras que me ponían la extensión como .jpg y otras cámaras que graban como .JPG y por lo que veo tan sólo analiza las que son en minúsculas.
Lo que se complica hacer algo aparentemente sencillo...
Guillermo Luijk escribió:Bueno soluciones o no el asunto, ya tienes dos aprendizajes Rafa: que no es buena idea usar espacios en los nombres de ficheros (no para el script de aremesal, esto es universal), y que Linux distingue mayúsculas de minúsculas (algo que estaría bien que hiciera Windows).
Salu2!
aremesal escribió:Ok, lo que suponía. Es problema de que al expandir variables dentro de un comando, si hay espacios, el comando "se rompe". La solución es sencilla (cuando la sabes ) basta con cambiar el IFS.
Ya he hecho el añadido al script, y también he permitido JPG además de jpg.
He añadido comentarios, por si quieres investigar qué hace cada parte del script: https://pastebin.com/wF7aLTP4
Rafa18 escribió:Lo de usar espacios y algunos caracteres especiales es algo que a estas alturas ya debería estar más que superado pero hay algún que otro programa que da fallos.
De hecho la anomalía es que Windows no distinga entre mayúsculas y minúsculas. Es herencia de un nefasto diseño del antiguo filesystem de MSDOS, que se fue heredando a FAT16, FAT32, NTFS... y no tienen huevos a dar el portazo de una vez y cambiarlo.Guillermo Luijk escribió:Rafa18 escribió:Lo de usar espacios y algunos caracteres especiales es algo que a estas alturas ya debería estar más que superado pero hay algún que otro programa que da fallos.
Pues ya has visto que no está tan superado, así que la próxima vez que puedas elegir usarlos o no piensa que no siempre habrá un aremesal para solucionarte la papeleta. Es una pena dejar de tener que usar alguna herramienta porque elegiste algo tan sencillo como usar espacios como nombres de archivo no?. Puedes usar la barra baja en su lugar _
Y sí Linux distingue mayúsculas y mayúsculas de toda la vida. En concreto desde que Linus Torvalds lo diseñó copiando Unix.
Salu2!
aremesal escribió:De hecho la anomalía es que Windows no distinga entre mayúsculas y minúsculas. Es herencia de un nefasto diseño del antiguo filesystem de MSDOS, que se fue heredando a FAT16, FAT32, NTFS... y no tienen huevos a dar el portazo de una vez y cambiarlo.
Rafa18 escribió:Lo más jodido es que no sé si está funcionando como debería...
...Ya ha pasado la carpeta de Londres y no me ha detectado fotos dañadas cuando sé que tengo alguna.
Usuarios navegando por este Foro: Google [Bot] y 90 invitados