GNU/Linux >> Tutoriels Linux >  >> Linux

Ny Alternative compatible avec la ligature pour "pdfgrep" en ligne de commande ?

J'utilise toujours "pdfgrep" pour rechercher dans plusieurs fichiers PDF à partir de la ligne de commande. Mais j'ai rencontré un problème :ce caractère de ligature "fi" (voir https://www.compart.com/en/unicode/U+FB01).
"fi" est dans le mot "fixe", donc je n'ai pas pu rechercher le terme "opérateur de point fixe" avec pdfgrep -iR 'fixed point operator' . Cependant, lorsque j'ouvre le fichier avec des lecteurs PDF tels que Foxit Reader et Evince, "fi" est divisé en "f" et "i", donc consultable. Existe-t-il une alternative plus fiable pour le "pdfgrep" ? Ou existe-t-il des mots-clés d'option dans "pdfgrep" pour étendre l'encodage ?

Le fichier PDF est http://direct.mit.edu/books/chapter-pdf/238450/9780262321037_can.pdf .

Ubuntu 20.04, amd64, version du noyau Linux 5.6.0-1018-oem. pdfgrep a une option --unac . Mais si j'installe pdfgrep avec sudo apt-get install pdfgrep , commande --unac affichera "pdfgrep :prise en charge UNAC désactivée au moment de la compilation !"

pdfgrep:
  Installed: 2.1.2-1build1
  Candidate: 2.1.2-1build1
  Version table:
 *** 2.1.2-1build1 500
        500 http://mirrors.huaweicloud.com/ubuntu focal/universe amd64 Packages
        100 /var/lib/dpkg/status

Réponse acceptée :

Pour résoudre ce problème, vous devez d'abord utiliser pdftotext pour savoir à quoi ressemble votre ligature sous forme d'UTF-8, par exemple je lance ceci :

pdftotext -f 11 -l 13 ~/Mathematics/Analysis/MeasureTheory.pdf text && cat text 

et obtenir une ligne de résultats ressemble à ceci

   1.6.  Infinite and σ-finite measures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24

alors je sais fi est en fait un téléphone à sonnerie ☎ dans le terminal, cependant il s'affiche sous la forme fi sur le navigateur.

Donc je continue avec pdfgrep

pdfgrep --page-range=11-13 fi ~/Mathematics/Analysis/MeasureTheory.pdf

Enfin, bien sûr, j'obtiens les résultats souhaités :

   1.6.  Infinite and σ-finite measures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
   2.4.  The general definition of the Lebesgue integral . . . . . . . . . . . . . . 118
   2.6.  Integration with respect to infinite measures . . . . . . . . . . . . . . . . 124
   3.5.  Infinite products of measures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187

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

  2. 8 conseils pour la ligne de commande Linux

  3. Réduisez la taille du PDF avec cette astuce de ligne de commande

  4. Astuces Bash pour tous les jours en ligne de commande

  5. Alternative à la ligne de commande SSH d'Ubuntu

4 applications de prise de notes en ligne de commande pour Linux

10 astuces de ligne de commande Linux utiles pour les débutants - Partie 2

20 exemples de commandes Sed (éditeur de flux) pour les utilisateurs Linux

Tutoriel Linux Uniq Command pour débutants (10 exemples)

Micro - Un éditeur de texte basé sur la ligne de commande pour Linux

Développer rapidement une interface graphique pour la ligne de commande