GNU/Linux >> Znalost Linux >  >> Linux

Zkontrolujte, zda nejsou soubory PDF poškozeny pomocí příkazového řádku v systému Linux

Můžete to zkusit udělat pomocí pdfinfo (zde na Fedoře v poppler-utils balík). pdfinfo získá informace o souboru PDF ze svého slovníku, takže pokud jej najde, soubor by měl být v pořádku

for f in *.pdf; do
  if ! pdfinfo "$f" &> /dev/null; then
    echo "$f" is broken
  fi
done

find . -iname '*.pdf' | while read -r f
  do
    if pdftotext "$f" - &> /dev/null; then 
        echo "$f" was ok;   
    else
        mv "$f" "$f.broken";
        echo "$f" is broken;   
    fi; 
done

Můj nástroj pro kontrolu souborů PDF je qpdf . qpdf--check argument, který dobře najde problémy v PDF.

Zkontrolujte jeden soubor PDF s qpdf :

qpdf --check test_file.pdf

Zkontrolujte všechny soubory PDF v adresáři pomocí qpdf :

find ./directory_to_scan/ -type f -iname '*.pdf' \( -exec sh -c 'qpdf --check "{}" > /dev/null && echo "{}": OK' \; -o -exec echo "{}": FAILED \; \)

Vysvětlení příkazu:

  • find ./directory_to_scan/ -type f -iname '*.pdf' Najít všechny soubory s příponou '.pdf'

  • -exec sh -c 'qpdf --check "{}" > /dev/null && echo "{}": OK' \; Spusťte qpdf pro každý nalezený soubor a přenést veškerý výstup na /dev/null . Vypište také název souboru následovaný ':OK', pokud je návratový stav qpdf je 0 (tj. žádné chyby)

  • -o -exec echo "{}": FAILED \; \) To se provede, pokud jsou nalezeny chyby:Tisk názvu souboru následovaný ":FAILED"

Kde získat qpdf :

qpdf má binární soubory pro Linux i Windows dostupné na:https://github.com/qpdf/qpdf/releases. K jeho získání můžete také použít svého správce balíčků. Například na Ubuntu můžete nainstalovat qpdf pomocí apt s příkazem:

apt install qpdf

Linux
  1. Upravujte soubory PDF na příkazovém řádku systému Linux

  2. Úvod do používání tcpdump na příkazovém řádku Linuxu

  3. Jak zkontrolovat, zda jsou vzdálené porty dosažitelné pomocí příkazu „nc“.

  1. 5 nástrojů příkazového řádku pro rychlé vyhledání souborů v systému Linux

  2. Jak vypnout nebo restartovat Linux pomocí příkazového řádku

  3. Jak restartovat Linux pomocí příkazového řádku

  1. Použití síly na příkazovém řádku Linuxu

  2. Vytvářejte soubory pomocí příkazového řádku v Linuxu

  3. Jak třídit soubory v Linuxu pomocí příkazu Sort