複数のPDFファイルのページをカウントする方法は?


12

ほぼ正規の名前を持つ約20の個別のpdf(章ごと)で構成されるpdf教科書を受け取りました。各ファイルを開かずに(またはプロパティを通過して)本のページをカウントする方法はありますか?

[解決策はWindowsまたはUbuntuの場合があります]


Adobe Acrobatをお持ちですか?
wizlog

各PDFファイル、および/または本全体のページ数をカウントしますか?
フランクダーノンクール

@FranckDernoncourt-ありがとう。質問は約7年前に尋ねられました。あなたが言及したいずれかの方法の解決策がある場合、なぜここに答えを追加して、この問題を調査している将来のユーザーが参照できるのですか?
ysap

回答:


19

pdfinfoこれを使用すると、私が思いつく最高の方法です:ファイルごとのページ数を印刷するには:

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

すべてのファイルのすべてのページの合計を印刷するには:

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

Ubuntuでは、pdfinfoパッケージに含まれていますpoppler-utils。それをインストールするには、次を使用します。

sudo apt-get install poppler-utils

Windowsでは、cygwinを使用できます。pdfinfoパッケージに含まれていますpoppler


+1 pdfinfoはまさに私が探していたものです。両面印刷エミュレーションパッケージのページ数に必要です。
ジョー

何らかの理由でpdfinfoがgrepがバイナリファイルとして解釈したものを返すため、grepコマンドに--textフラグを追加する必要がありました。他の誰かが同じ問題を抱えている場合に備えて、grep --text "^ Pages:"を使用します。
KIAaze

4

私はそれが遅すぎることを知っていますが、私はこれのためのより良い、より簡単な解決策を見つけました。

sourceforge "pdf split and merge"からダウンロードしてインストールします

すべてのファイルをその上にドロップすると、画面で、各ページのページ数と情報に関するスプレッドシートのようなレポートが生成されます。

それを選択し、コピーして、Excelまたはopencalcに貼り付けてください。


4

私はこれのためだけにアプリケーションを作成しました。Javaで書かれているので、すべてのOSで動作します。こちらをご覧ください:

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

ターミナル(java -jar)からアプリケーションを実行して、正常に動作することを確認するのが最善です。

すべてのpdfのページ数を取得するディレクトリにjarファイルを配置します。サブフォルダーも循環します。jarファイルがある場所にすべてのpdfを配置する必要はありません。 jarファイル。jarをダブルクリックします。pdfが多数ある場合は時間がかかることがあります。最終的には、jarファイルと同じディレクトリにtxtファイルが出力され、その中にページカウントが含まれます。


良いアイデア。1)コマンドラインのみで開く(UIなし)、2)各ファイルのページサイズを合計とともに出力する
raider33

1

Adobe Acrobat Proで、ファイル > PDFの作成 > ファイルを単一のPDFにマージします。次に、ファイル追加し、必要なファイルを選択します。結合をクリックして、最終PDFに含まれるページ数を確認します。


@wizlogに感謝します-これには本当にフル機能の(そして高価な)ソフトウェアが必要ですよね?
ysap

質問に対するあなたのコメントに気づきました。いいえ、持っていません。
ysap

1

こんにちは、あなたはWindowsでそれを行う方法を知りませんが、Linux bashではこれで動作するはずです

PDFS = `ls * .pdf`
カウンター= 0
i for $ PDFS
行う
   ((counter + = `pdfinfo internship_report.pdf | sed -n 's | Pages:[^ 0-9] * \([0-9] * \)。* | \ 1 | p'`))
やった
エコー$ counter

最高のガードケニー


ありがとう、ケニー。これは、ファイル名がファイルをスキャンする場合に機能する可能性があります。とにかく賛成。
ysap

0

parallelandを使用した別のアプローチexpr(マルチプロセッサマシンでは少し高速になるはずです):

expr $( echo -n 0; parallel "pdfinfo {} |sed -n 's/Pages: */ + /p'" ::: *pdf|tr '\n' ' ')
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.