grep 検索結果の編集

grep 検索結果の編集

keyword通常、次のコマンドを使用してpdfファイルのリストからaを検索できます。

for file in *pdf; do 
pdftotext "$file" - | grep keyword
done

検索結果でコマンドを使用せずに手動でファイルのタイトル名と作成者/作成者を検索するにはpdfinfoどうすればよいですか?

ベストアンサー1

PDFファイルを変換すると、pdftotextメタ情報が失われます。しかし、pdftotext興味深いオプションがあります。

-htmlmeta
       Generate a simple HTML file, including the meta information.  This simply wraps the 
       text in <pre> and </pre> and  prepends the meta headers.

これでメタ情報をgrepすることもできます。

pdftotext -htmlmeta file.pdf - | \
  grep -oP '.*keyword.*|<title>\K.*(?=</title>)|<meta name="Author" content="\K.*(?="/>)'

keywordPDFファイル内で検索されます。その後、|文書から文書タイトルと作成者という2つの追加の検索パターンが抽出されます。結果は次のとおりです。

title of the document
author of the document
search pattern

または、perl一致後にテキスト形式を指定するを使用します。これは次のとおりですgrep

pdftotext -htmlmeta file.pdf - | perl -ne '/keyword/ && print "Pattern: $_"; /<title>(.*)<\/title>/ && print "Title: $1\n"; /<meta name="Author" content="([^"]+)/ && print "Author: $1\n"'

出力は次のとおりです。

Title: title of the document
Author: author of the document
Pattern: bla bla search pattern bla bla

おすすめ記事