비밀번호로 보호된 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이 주어진 마지막 비밀번호라면 그 반대가 됩니다.
몇 가지 질문이 있습니다:
- pdfgrep에 여러 개의 비밀번호를 제공하는 방법은 무엇입니까?
- 월별 명세서에서 쉽게 찾을 수 있는(또는 신용카드 거래 목록을 얻을 수 있는) 다른 방법이 있습니까?
이것이 중요한지 확실하지 않으면 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
예로서 사용하고 있습니다.