如何让pdftk结尾减1?

如何让pdftk结尾减1?

我想从 pdf 文档中提取页面,以便提取除第一页和最后一页之外的所有页面。代码(end-1)不起作用,也没有2-end-1

pdftk 1.pdf cat 2-(end-1) output output.pdf

答案1

pdftk yourpdfile.pdf cat 2-r2 output out.pdf

从文档中:

您可以通过在页码前添加字母 r 来按相反的顺序引用页码。例如,页面 r1 是文档的最后一页,r2 是文档的倒数第二页,而 rend 是文档的第一页。您也可以在范围内使用此前缀,例如 r3-r1 是 PDF 的最后三页。

答案2

您可以定义一个范围并从中删除页面(使用~)来实现此目的:

pdftk 1.pdf cat 2-end~end output output.pdf

这告诉pdftk cat我们获取从第二页到最后一页( )的页面,并从范围( )2-end中删除最后一页。~end结果是 PDF 包含除原件第一页和最后一页之外的所有内容。

答案3

您可以使用以下格式:

pdftk A=1.pdf cat A2-(n-1) output 'outputfile_p2-p(n-1).pdf'

您可以n通过以下方式确定:

pdftk 1.pdf dump_data | grep NumberOfPages

例如:n=8

pdftk A=1.pdf cat A2-7 output 'outputfile_p2-p7.pdf'

答案4

遵循以下想法@GADR3您可以通过将页数设置为以编程方式解决它n

n=$(pdftk 1.pdf dump_data | grep NumberOfPages | cut -d ":" -f 2)

然后用作命令n的表达式pdftk

pdftk A=1.pdf cat A2-$(expr $n - 1) output output.pdf

就我个人而言,我更喜欢使用相反的顺序前缀,r如中所述@用户218374回答:

pdftk A=1.pdf cat A2-r2 output output.pdf

相关内容