pdfgrep パスワードが異なる複数のファイル

pdfgrep パスワードが異なる複数のファイル

パスワードで保護されたPDF(クレジットカード明細書)で文字列を見つけようとしています。パスワードの異なるファイルが複数あります。これマンページ(?) --password=Value を複数回指定でき、各パスワードは grep'd される各 PDF ファイルに対して試行されます。ところで、最後のパスワードだけが使用されたことを発見しました。

pdfgrep -P "[0123][0-9] [JFMASOND][aepuco][nbrylgptv] [012][0-9].+[0-9,]+\.[0-9][0-9] *([cC][rR])?" --password=password1 --password=password2 *.pdf

パスワード2のみが使用され、これらのファイルのみがgrepさ​​れます。確かに、パスワード1が与えられた最後のパスワードであればその逆になります。

いくつかの質問があります:

  1. pdfgrepに複数のパスワードを提供する方法は?
  2. 毎月の明細書で簡単に見つけることができる(またはクレジットカード取引リストを取得する)他の方法はありますか?

これが重要かどうかわからない場合は、cygwinを試しています。

答え1

インストールされていない場合は必要になる場合があります。
Bash用のCygwinパッケージの概要

スクリプトを使用して別の行に配置できます。

#!/bin/bash

pdfgrep -P "[0123][0-9] [JFMASOND][aepuco][nbrylgptv] [012][0-9].+[0-9,]+\.[0-9][0-9] *([cC][rR])?" --password=password1 file1.pdf

pdfgrep -P "[0123][0-9] [JFMASOND][aepuco][nbrylgptv] [012][0-9].+[0-9,]+\.[0-9][0-9] *([cC][rR])?" --password=password2 file2.pdf

exit 0

保存場所:pdfgrep_password.sh
スクリプトモードを実行可能ファイルに変更:chmod +x pdfgrep_password.sh
実行: ./pdfgrep_password.sh

多くのPDFファイルが必要pdfgrepで、すべてパスワード1またはパスワード2がある場合は、ファイルが許可するパスワードを見つけてすべてのファイルを繰り返します。pass_check.shなどとして保存

#!/bin/bash

for file in *.pdf; do

pdfgrep -Pq "[0123][0-9] [JFMASOND][aepuco][nbrylgptv] [012][0-9].+[0-9,]+\.[0-9][0-9] *([cC][rR])?" --password=pass "$file" 2> /dev/null

if [ $? == 2 ]; then
echo ""$file" DENIES #1."
else
echo ""$file" ACCEPTS #1."
fi

pdfgrep -Pq "[0123][0-9] [JFMASOND][aepuco][nbrylgptv] [012][0-9].+[0-9,]+\.[0-9][0-9] *([cC][rR])?" --password=word "$file" 2> /dev/null

if [ $? == 2 ]; then
echo ""$file" DENIES #2."
else
echo ""$file" ACCEPTS #2."
fi

done

exit 0

以下を削除できます。

echo ""$file" DENIES...
else

どちらの行もコンソール出力を読みやすくするために、両方のセクションから出てきます。私はそれをelse例として使用しています。

関連情報