準正規の名前が付いた約20の個別のpdf(章ごと)で構成されるpdf教科書を受け取りました。各ファイルを開いていない(またはプロパティを通過していない)本のページをカウントする方法はありますか?
[WindowsまたはUbuntu向けのソリューション]
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
に含まれています。
私は手遅れを知っていますが、これのためのより良い、より簡単な解決策を見つけました。
Sourceforgeからダウンロードしてインストールする「pdf split and merge」
その上にすべてのファイルをドロップすると、画面に、ページ数と各情報に関するスプレッドシートのようなレポートが生成されます。
それを選択し、コピーして、Excelまたはopencalcに貼り付けてください。
Javaで記述されているため、すべてのOSで動作します。こちらで確認してください。
https://github.com/hamiltino/multiple-pdf-counter/releases
端末からアプリケーションを実行するのが最善です(Java -jar
)が正しく機能することを確認します。
すべてのpdfのページ数を取得するディレクトリにjarファイルを配置します。サブフォルダーも循環します。jarファイルがある場所にすべてのpdfを配置する必要はありません。 jarファイル。 jarをダブルクリックします。pdfがたくさんある場合は時間がかかることがあります。最終的にjarファイルと同じディレクトリにtxtファイルが出力され、その中にページ数が含まれます。
Adobe Acrobat Proで、ファイル> PDFを作成> ファイルを1つのPDFにマージに移動します。次にファイルを追加して、必要なファイルを選択します。 [結合]をクリックして、最終的なPDFのページ数を確認します。
こんにちはWindowsでそれを行う方法を知りませんが、Linux bashではこれで動作するはずです
PDFS = `ls * .pdf` counter = 0 for i in $ PDFS do ((counter + =` pdfinfo internship_report .pdf | sed -n 's |ページ:[^ 0-9] * \([0-9] * \)。* |\1 | p'`)) 完了 echo $ counter
最高のケニーを守る
parallel
とexpr
を使用した別のアプローチ(マルチプロセッサマシンでは少し高速になるはずです):
expr $( echo -n 0; parallel "pdfinfo {} |sed -n 's/Pages: */ + /p'" ::: *pdf|tr '\n' ' ')