GNU/Linux >> Tutoriels Linux >  >> Linux

Vérifiez si les fichiers PDF sont corrompus à l'aide de la ligne de commande sous Linux

Vous pouvez essayer de le faire avec pdfinfo (ici sur Fedora dans le poppler-utils forfait). pdfinfo obtient des informations sur le fichier PDF à partir de son dictionnaire, donc s'il le trouve, le fichier devrait être correct

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

Mon outil de choix pour vérifier les PDF est qpdf . qpdf a un --check argument qui fait bien pour trouver des problèmes dans les PDF.

Vérifier un seul PDF avec qpdf :

qpdf --check test_file.pdf

Vérifier tous les PDF d'un répertoire avec qpdf :

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

Explication de la commande :

  • find ./directory_to_scan/ -type f -iname '*.pdf' Trouver tous les fichiers avec l'extension '.pdf'

  • -exec sh -c 'qpdf --check "{}" > /dev/null && echo "{}": OK' \; Exécutez qpdf pour chaque fichier trouvé et dirigez toutes les sorties vers /dev/null . Imprime également le nom du fichier suivi de ' :OK' si le statut de retour est qpdf est 0 (c'est-à-dire qu'il n'y a pas d'erreurs)

  • -o -exec echo "{}": FAILED \; \) Ceci est exécuté si des erreurs sont trouvées :Imprimez le nom du fichier suivi de " :FAILED"

Où obtenir qpdf :

qpdf a des binaires Linux et Windows disponibles sur :https://github.com/qpdf/qpdf/releases. Vous pouvez également utiliser le gestionnaire de packages de votre choix pour l'obtenir. Par exemple sur Ubuntu vous pouvez installer qpdf en utilisant apt avec la commande :

apt install qpdf

Linux
  1. Modifier des fichiers PDF sur la ligne de commande Linux

  2. Comment vérifier que les ports distants sont accessibles à l'aide de la commande 'nc'

  3. 5 outils de ligne de commande pour trouver rapidement des fichiers sous Linux

  4. Comment redémarrer Linux en utilisant la ligne de commande

  5. Créer des fichiers en utilisant la ligne de commande sous Linux

Comment créer un fichier sous Linux à l'aide d'un terminal/ligne de commande

Comment supprimer des fichiers et des répertoires à l'aide de la ligne de commande Linux

Commande Rm sous Linux

3 façons de vérifier la version du noyau Linux en ligne de commande

Comment vérifier la version du système d'exploitation avec la ligne de commande Linux

Comment télécharger des fichiers dans Rocky Linux 8 sur la ligne de commande à l'aide de wget