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は文書の最後から2番目のページであり、rendは文書の最初のページである。範囲内でこのプレフィックスを使用することもできます。たとえば、r3-r1 は PDF の最後の 3 ページです。

答え2

範囲を定義して範囲からページを削除することで、~これを達成できます(次を使用)。

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

これはpdftk cat、2番目から最後のページまでのページを取得し()、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個人的には、上記のように逆順接頭辞を使用することを好みます。こんにちは答え:

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

関連情報