我有一个 8000 页的 PDF,我想将它们分成 500 页的批次,即 pdf_1 有 1-500 页,pdf_2 有 501-1000 页,等等。(我不想要其他解决方案中提议的单页 pdf,而是想要 n 页的 pdf,这里 n=500)
有没有办法在 Ubuntu 中使用脚本来做到这一点?
我不想手动打印,因为这样需要多次打印。我希望能够使用脚本来完成此操作
答案1
您可能需要安装qpdf
。以下是脚本的快速尝试。
#!/bin/bash
pdffile="$1"
# Find the nuber of pages in the document
qty=$(pdfinfo "$pdffile" | grep Pages | awk '{print $2}')
i=1 # first page for the file
j=500 # last page for the file
if [ $j -gt $qty ] ; then
echo "File is already smaller than 500 pages."
exit 0
fi
while [ $j -le $qty ] ; do
qpdf "$pdffile" --pages . $i-$j -- file.$i-$j.pdf
i=$((i+500)) # on to the next 500...
j=$((j+500))
# If the remaining pages are less than 500, use qty as end.
if [ $j -gt $qty ] ; then
j=$qty
fi
# ugly hack for if the number of pages is exactly n*500
if [ $i -gt $qty ] ; then
j=$((qty+100))
fi
done
您可以考虑使用 cli-argument 而不是 500,提供更好的输出文件名等。但这应该给您一个基本的想法。