Conversión pdf2djvu de todos los archivos en una carpeta

Conversión pdf2djvu de todos los archivos en una carpeta

Necesita convertir cientos de archivos PDF en varias carpetas. pdf2djvu gui es basura en Windows y siempre falla después de un par de conversiones.

Tomando este código del cual estoy trabajando

for file in *.pdf; do pdftotext "$file" "$file.txt"; done

Normalmente ejecuto pdf2djvu así: pdf2djvu -o *.djvu *.pdf

Usar lo que se muestra a continuación me da: No escribiré datos de DjVu en la terminal

for file in *.pdf; do pdf2djvu "$file" "$file.djvu"; done

Y para: file in *.pdf; do pdf2djvu -o "$file" "$file.djvu"; done

No se puede cargar el documento PDF Error: No se pudo abrir el archivo *.pdf.djvu: caracteres aleatorios desconocidos

Y para:for file in *.pdf; do "pdf2djvu -o" "$file" "$file.djvu"; done

pdf2djvu -o: comando no encontrado

Y para: for file in .pdf; do "pdf2djvu -o *.djvu *.pdf" "$file" "$file.djvu"; done bash: pdf2djvu -o *.djvu *.pdf: No existe tal archivo o directorio

Respuesta1

-o son opciones de salida. El nombre del archivo de salida debe seguir después. Entonces esto funciona para mí:

for file in *.pdf; do pdf2djvu -o "$file.djvu" "$file"; done

Respuesta2

for file in *.pdf; do pdf2djvu -o "$file.djvu" "$file"; done

Convertirá todos los archivos a djvu. Sin embargo, los nuevos archivos tendrán un nombre con la extensión .pdf.djvu.

Para terminar con la conversión a djvu y una extensión .djvu, use:

for file in *.pdf; do pdf2djvu -o "${file%.pdf}.djvu" "$file"; done

Esto eliminará el .pdf antes de agregar el .djvu al nombre del archivo.

información relacionada