Der Grund pdftotext ohne Erfolg war sein könnte , dass die PDF gescannte Bilder sind , und Sie müssen OCR ihnen, schrieb ich einen schnellen Weg , um alle suchen pdf
s , die nicht sein kann grep
ed und OCR ihnen.
Ich habe festgestellt, dass eine pdf
Datei, die keine Schriftart enthält, normalerweise nicht durchsucht werden kann. Wenn wir das wissen, können wir es nutzen pdffonts
.
Die ersten pdffonts
beiden Zeilen des sind die Tabellenüberschriften. Wenn also eine Datei durchsucht werden kann, werden mehr als zwei Zeilen ausgegeben, da wir wissen, dass wir Folgendes erstellen können:
gedit check_pdf_searchable.sh
Fügen Sie dies ein
#!/bin/bash
#set -vx
if ((`pdffonts "$1" | wc -l` < 3 )); then
echo $1
ocrmypdf "$1" "$1"_ocr.pdf
fi
dann mach es ausführbar
chmod +x check_pdf_searchable.sh
Listen Sie dann alle nicht durchsuchbaren PDFs im Verzeichnis auf:
ls -1 ./*.pdf | xargs -L1 -I {} ./check_pdf_searchable.sh {}
oder im Verzeichnis und seinen Unterverzeichnissen:
tree -fai . | grep -P ".pdf$" | xargs -L1 -I {} ./check_pdf_searchable.sh {}
Sie müssen außerdem Folgendes installieren:
sudo apt install ocrmypdf