Servicio de automatización: borre la última página de PDF con el uso de pdfsplit a través de bash

1

Me gustaría diseñar un servicio simple de Automator que eliminaría la última página del PDF pasado a través del buscador. Mi sintaxis propuesta para el script de shell es:

for f in "$@"
do
    pages='pdfcount "$f"'
    pagescut='$pages - 1'
    /usr/local/bin/pdfsplit "$f" - $pagescut > "$f".tmp
    rm "$f"
    mv "$f".tmp "$f"
done

El flujo de trabajo de Mi Automator se ve así: Lasintaxisparaeliminarlaprimerapágina:/usr/local/bin/pdfsplit"$f" 2- > "$f".tmp , funciona como un hechizo por lo que el error debe estar en hacer la aritmética en los números de página. Intenté modificar la sintaxis:

for f in "$@"
do
    pages='pdfcount "$f"'
    pagescut='$(( ${pages} - 1 ))'
    /usr/local/bin/pdfsplit "$f" - $pagescut > "$f".tmp
    rm "$f"
    mv "$f".tmp "$f"
done

pero no estoy obteniendo los resultados deseados. ¿Cómo construir este servicio correctamente?

    
pregunta Konrad 21.02.2015 - 22:37

1 respuesta

1

Tienes un par de errores en tu sintaxis. Reemplaza las siguientes líneas:

pages='pdfcount "$f"'
pagescut='$(( ${pages} - 1 ))'

Con estos:

pages=$(pdfcount "$f")
pagescut=$(($pages - 1))
    
respondido por el jherran 22.02.2015 - 15:51

Lea otras preguntas en las etiquetas