¿Cómo contar páginas en múltiples archivos PDF?


12

Acabo de recibir un libro de texto en formato PDF compuesto por unos 20 archivos PDF separados (por capítulo) con nombres casi regulares. ¿Hay alguna manera de contar las páginas del libro sin abrir cada archivo (o pasar por las propiedades)?

[la solución puede ser para Windows o Ubuntu]


¿Tienes Adobe Acrobat?
wizlog

¿Desea el recuento de páginas para cada archivo PDF y / o el libro completo?
Franck Dernoncourt

@FranckDernoncourt - gracias. La pregunta se hizo hace unos 7 años. Si tiene una solución para cualquiera de las formas que mencionó, ¿por qué no agrega una respuesta aquí, para que los futuros usuarios que investiguen este problema puedan consultar?
ysap

Respuestas:


19

Usar pdfinfoesto es lo mejor que se me ocurre: para imprimir la cantidad de páginas por archivo:

for i in *.pdf; do echo $i && pdfinfo "$i" | grep "^Pages:"; done

Para imprimir la suma de todas las páginas en todos los archivos:

for i in *.pdf; do pdfinfo "$i" | grep "^Pages:"; done | awk '{s+=$2} END {print s}'

En Ubuntu, pdfinfoestá contenido en el paquete poppler-utils. Para instalarlo, use:

sudo apt-get install poppler-utils

En Windows, puede usar cygwin. pdfinfoEstá contenido en el paquete poppler.


+1 pdfinfo es exactamente lo que estaba buscando. Lo necesito para el recuento de páginas en mi paquete de emulación de impresión dúplex.
Joe

Tuve que agregar el indicador --text al comando grep, porque por alguna razón pdfinfo devolvió algo que grep interpretó como un archivo binario. Entonces grep --text "^ Pages:", en caso de que alguien más tenga el mismo problema.
KIAaze

4

Sé que es demasiado tarde, pero acabo de encontrar una solución mejor y más simple para esto.

Descargue e instale desde sourceforge "pdf split and merge"

Coloque todos sus archivos en él, y en la pantalla genera un informe similar a una hoja de cálculo sobre el número de páginas e información de cada uno.

Seleccione eso, copie, pegue en Excel o OpenCalc, lo tiene.


4

Hice una aplicación solo para esto, está escrita en Java, por lo que funciona en todos los sistemas operativos. Compruébalo aquí:

https://github.com/hamiltino/multiple-pdf-counter/releases

Es mejor ejecutar la aplicación desde la terminal ( java -jar) para asegurarse de que funcione correctamente.

Coloque el archivo jar en el directorio en el que desea obtener el recuento de páginas de todos los archivos PDF. También pasará por las subcarpetas, no es necesario colocar todos los archivos PDF donde está el archivo jar, ya que pasará por las subcarpetas donde coloca el archivo archivo jar. Haga doble clic en el archivo jar, puede tomar algún tiempo si hay muchos archivos PDF, eventualmente generará un archivo txt en el mismo directorio del archivo jar y tendrá el recuento de páginas dentro.


Buena idea. Serían buenas mejoras: 1) abrir que es solo la línea de comandos (sin interfaz de usuario), y 2) generar el tamaño de página de cada archivo, junto con el total
raider33

1

En Adobe Acrobat Pro, vaya a archivo > crear PDF > combinar archivos en un solo PDF . Luego agregue archivos y seleccione los archivos que desee. Haga clic en combinar y vea cuántas páginas hay en el PDF final.


Gracias @wizlog: esto realmente requiere el software completo (y costoso), ¿no?
ysap

Acabo de notar tu comentario sobre la pregunta. No, no lo tengo.
ysap

1

Hola, no sé cómo puedes hacerlo en Windows, pero en Linux Bash debería funcionar con esto

PDFS = `ls * .pdf`
contador = 0
para i en $ PDFS
hacer
   ((counter + = `pdfinfo internship_report.pdf | sed -n 's | Páginas: [^ 0-9] * \ ([0-9] * \). * | \ 1 | p'`))
hecho
echo $ counter

saludos cordiales kenny


Gracias Kenny Esto puede funcionar si el nombre de archivo escaneara los archivos. Votado de todos modos.
ysap

0

Otro enfoque con parallely expr(debería ser un poco más rápido en máquinas multiprocesador):

expr $( echo -n 0; parallel "pdfinfo {} |sed -n 's/Pages: */ + /p'" ::: *pdf|tr '\n' ' ')
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.