CLI で PDF ファイルの「作成」タイムスタンプを取得する

CLI で PDF ファイルの「作成」タイムスタンプを取得する

CLI の「ドキュメント」タブ (PDF のファイル プロパティ) から「作成」タイムスタンプを取得する CLI コマンドがあるかどうか知りたいです。

ファイルシステムからアクセス/変更/変更情報を取得するためにを使用できることはわかっていますstatが、「ドキュメント」タブのメタデータはファイル自体に埋め込まれているため、CLI 経由でそれを抽出する方法がわかりません。

これを実行する必要がある理由は、約 22,000 個の PDF ファイルのファイル名と「作成」タイムスタンプのリストを作成するためです。明らかに、これは GUI よりも CLI の方が適しています。

答え1

パッケージをインストールする場合はpoppler-utils、コマンドを使用してこれを実行できますpdfinfo。例:

$ pdfinfo OBEX-1.3.pdf 
Title:          Microsoft Word - OBEX13.doc
Author:         Daphne
Creator:        PScript5.dll Version 5.2
Producer:       Acrobat Distiller 5.0.5 (Windows)
CreationDate:   Wed Feb  5 11:12:32 2003
ModDate:        Wed Feb  5 11:12:32 2003
Tagged:         no
Pages:          95
Encrypted:      no
Page size:      612 x 792 pts (letter)
File size:      545666 bytes
Optimized:      yes
PDF version:    1.3

sedまたはなどの標準ツールを使用して、この出力から作成日を抽出できるはずですawk

もう少しプログラム的なものが必要な場合は、popplerライブラリを直接使用できます。Python (パッケージ経由python-poppler) を含む多くの一般的な言語のバインディングがあります。

答え2

私はまだ初心者ですが、エグジフツールこれを抽出できます。例:

% exiftool -createdate -ext pdf .

現在のディレクトリにあるすべてのPDFの作成日を出力します。出力フォーマットを制御する-csvおよび を含む-json

関連情報