1. Descomprimir los CBR a las imágenes JPG que los compone
2. Convertir los jpg en PDF
3. Borrar el CBR
Como es natural, eso es muy cómodo para hacer uno, pero para hacer 210, como era mi intención, es muy cansado; cuando llevas 10 ya no puedes más. La solución, el terminal. El que hice (cbr2pdf v.0.1Alpha) era bastante deficiente, por lo que hckorootx lo ha mejorado muchas veces (sustituyendo el rename por una versión de mv que sirva para todas las distribuciones) hasta llegar a la versión 0.7RC, que podemos pasar a 1.0 stable.
El script es así
#!/bin/bash
# Cambio de espacios por guiones bajos en todos los .cbr
for fichero_cbr in *.cbr; do
if [[ "$fichero_cbr" != "${fichero_cbr// /_}" ]]; then
mv "$fichero_cbr" "${fichero_cbr// /_}"
fi
done
# Descompresión, cambio de .JPG a .jpg (si es que hay .JPG) y conversión a PDF
for fichero_cbr in *.cbr; do
unrar e $fichero_cbr
for fichero_JPG in *.JPG; do
mv "$fichero_JPG" "${fichero_JPG//.JPG/.jpg}" 2> /dev/null
done
convert *.jpg "${fichero_cbr//.cbr/.pdf}"
rm $fichero_cbr
rm *.jpg
done
# Fin del script
El resultado es este:
El script es así
#!/bin/bash
# Cambio de espacios por guiones bajos en todos los .cbr
for fichero_cbr in *.cbr; do
if [[ "$fichero_cbr" != "${fichero_cbr// /_}" ]]; then
mv "$fichero_cbr" "${fichero_cbr// /_}"
fi
done
# Descompresión, cambio de .JPG a .jpg (si es que hay .JPG) y conversión a PDF
for fichero_cbr in *.cbr; do
unrar e $fichero_cbr
for fichero_JPG in *.JPG; do
mv "$fichero_JPG" "${fichero_JPG//.JPG/.jpg}" 2> /dev/null
done
convert *.jpg "${fichero_cbr//.cbr/.pdf}"
rm $fichero_cbr
rm *.jpg
done
# Fin del script
El resultado es este:
Este es solo una muestra con solo 10 ejemplares de un famoso comic nacional. Los 210 tardaron solo 10 minutos. Este es un ejemplo del poder del terminal.
Me gusta el script, aunque es mejor usar Perfect Viewer. Éste te lee los CBR sin ningún tipo de problema, sin tener que andar convirtiendo nada a PDF.
ResponderEliminarEs el mejor lector de Manga/Comics que hay para Android.
https://play.google.com/store/apps/details?id=com.rookiestudio.perfectviewer&hl=es
La instalaré en la Nexus para probar. De todas formas con el script y aldiko estoy cubierto.
ResponderEliminarNecesito mas ayuda, no se muy bien como se ejecuta un script, si se guarda o que...
ResponderEliminarcopié todo eso en el terminal y nada
Como indica la primera línea
Eliminar#!/bin/bash
es un script en bash. Lo grabas como fichero de texto plano y lo ejecutas
a veces simplemente
. nombre.fichero
y listo
ya te digo, soy muy torpe, sera que soy nuevo en esto....
Eliminarabro un editor de texto y escribo simplemente:
#!bin/bash
y lo guardo con que extension y/o nombre?
Y luego que?
Gracias
Por pasos,
Eliminar1. Introduces todo este texto en un fichero de texto plano (gedit, kwrite, nano o lo que quieras)
#!/bin/bash
# Cambio de espacios por guiones bajos en todos los .cbr
for fichero_cbr in *.cbr; do
if [[ "$fichero_cbr" != "${fichero_cbr// /_}" ]]; then
mv "$fichero_cbr" "${fichero_cbr// /_}"
fi
done
# Descompresión, cambio de .JPG a .jpg (si es que hay .JPG) y conversión a PDF
for fichero_cbr in *.cbr; do
unrar e $fichero_cbr
for fichero_JPG in *.JPG; do
mv "$fichero_JPG" "${fichero_JPG//.JPG/.jpg}" 2> /dev/null
done
convert *.jpg "${fichero_cbr//.cbr/.pdf}"
rm $fichero_cbr
rm *.jpg
done
# Fin del script
2. Después lo guardas con el nombre que quieras, con o sin extensión (por ejemplo cbr2pdf, por que así sabes de que va el script). si queremos ser muy puristas, le podemos dar una extensión sh (lo que indica que es un SHell script, en general en lenguaje bash), y así sabemos con certeza, meses después, que significa ese fichero cbr2pdf.sh (script bash que convierte cbr a pdf)
3. Le damos permiso de ejecución al script (ya que si no el fichero recién generado no tendrá permiso de ejecución y al ordenarlo no lo permitirá). Como verás después, no siempre es necesario
su -c 'chmod +x cbr2pdf'
o también, si usas sudo
sudo chmod +x cbr2pdf
4. Lo ejecutas; diferentes posibilidades
4.a. Directamente, y si si tiene permiso de ejecución
./cbr2pdf.sh
4.b. Sin permiso de ejecución
sh cbr2pdf.sh
4.c. Directamente, aun sin derechos de ejecución, aunque ahora estoy dudando (fíjate que hay un espacio entre . y el nombre del fichero)
. cbr2pdf.sh
El nombre puede ser incluso solo una letra
ok, estoy probandolo, por ahora me ha borrado alguno archivos, asi que sigo hasta dar con la tecla y ya comento
Eliminarde nuevo gracias
Claro que te borra ficheros. Al terminar, formado el pdf, borra el cdr y los jpg (rm es la abreviatura de remove). Te recomendaría hacer todas las pruebas en un directorio aparte con copias de los cbr originales, que mantienes en otro sitio.
EliminarClaro que te borra ficheros. Al terminar, formado el pdf, borra el cdr y los jpg (rm es la abreviatura de remove). Te recomendaría hacer todas las pruebas en un directorio aparte con copias de los cbr originales, que mantienes en otro sitio.
EliminarHa sido my util :) ¡muchas gracias!
Eliminarvale, me vuelve a fallar, creo que el problema esta en la fila 16:
ResponderEliminarconvert *.jpg "${fichero_cbr//.cbr/.pdf}"
en el terminal me pone algo como esto:
./cbr2pdf: línea 16: convert: orden no encontrada
y por eso se pierde de algna manera el contenido
convert forma parte del paquete imagemagick. Tendrás que instalar imagemagick
ResponderEliminarEn Fedora (0 sudo si lo has instalado y configurado)
su -c 'yum install imagemagick'
En Ubuntu, debian
sudo apt-get install imagemagick
Si no te gusta el terminal, en synaptic, packagekit, yumex o la aplicación gráfica que tenga su distribución para instalar paquetes también la pueden instalar en gráfico
Bien, ya funcionó todo perfect, muchas gracias, eres de buena ayuda
EliminarSugerencia para la descompresión, sobreescribir archivos, por ejemplo, si hay Thumbs.db
ResponderEliminarunrar e -o+ $fichero_cbr