web-dev-qa-db-fra.com

Rechercher et remplacer par le fichier PDF à partir de la ligne de commande

Je souhaite rechercher un texte ou un mot spécifique dans le fichier PDF, le remplacer par un autre texte et créer un nouveau fichier PDF à partir de la ligne de commande. J'ai essayé avec sed, find, awk série sur des fichiers texte, mais je veux obtenir sur fichier PDF. Quel utilitaire de ligne de commande m'aidera?

7
denny

Utilisez pdftk pour décompresser le fichier, puis modifiez-le via sed et recompressez-le enfin.

pdftk input.pdf output uncompressed.pdf uncompress
sed -i 's/foo/bar/g' uncompressed.pdf
# uncompressed.pdf now has all the changes
pdftk uncompressed.pdf output changed.pdf compress

Bien entendu, aucun texte dans une image ne peut être modifié de la sorte.

12
Fiximan

Une solution possible pourrait ressembler à ceci ...

Vous pouvez convertir des fichiers PDF en fichiers texte purs en utilisant quelques outils du paquet poppler-utils.

Il peut être installé via:

Sudo apt-get install poppler-utils

Convertir un fichier pdf en fichier texte

pdftotext /home/USER/Desktop/test.pdf /home/USER/Desktop/test.txt

Vous pouvez maintenant éditer et remplacer votre fichier pdf.

Après cela, vous pouvez le reconvertir en utilisant un paquet nommé cups-pdf OR text2pdf.

Peut-être pas la solution parfaite, mais devrait faire son travail.

J'espère que cela t'aides!

0
teufelsfrucht