Comment diviser des fichiers PDF à partir du terminal Linux à l’aide de PDFtk

L’un des meilleurs moyens de diviser des fichiers PDF sous Linux n’est pas avec un outil d’interface graphique comme Evince ou Ocular. Au lieu de cela, c’est avec une application de terminal appelée PDFtk. Non seulement il peut diviser les fichiers PDF, mais il peut également les éditer et les modifier.

Installez PDFtk

Cette application existe depuis un certain temps et peut être facilement installée sur la plupart des distributions Linux. Ouvrez une fenêtre de terminal et suivez les instructions ci-dessous pour installer l’application.

Remarque: pour installer PDFtk, vous devez utiliser Ubuntu, Debian, Arch Linux, Fedora ou OpenSUSE. Si vous n’exécutez aucune de ces distributions Linux, suivez les instructions source en bas.

Ubuntu

sudo apt install pdftk

Debian

sudo apt-get install pdftk

Arch Linux

PDFtk est utilisable sur Arch Linux, mais les utilisateurs ne pourront pas installer le logiciel à partir des principales sources d’Arch Linux. Au lieu de cela, il est nécessaire d’interagir avec Arch Linux AUR. Pour démarrer l’installation de PDFtk sur Arch, ouvrez un terminal et utilisez le gestionnaire de packages Pacman pour synchroniser la dernière version de l’outil Git.

  Comment désactiver l'historique de recherche Spotlight dans iOS 10

Remarque: il existe un autre package PDFtk sur l’AUR qui facilite l’installation du programme, car il décompile un programme prêt à l’emploi, plutôt que de construire à partir des sources. Nous ne recommandons pas cette voie, car il y a des problèmes avec le paquet GCC-GCJ prêt à l’emploi.

sudo pacman -S git

Maintenant que Git fonctionne sur Arch Linux, vous pourrez l’utiliser pour télécharger la dernière version de l’instantané PDFtk AUR. Dans le terminal, utilisez git clone pour télécharger le fichier d’instructions de construction.

git clone https://aur.archlinux.org/pdftk.git

À l’aide de la commande CD, déplacez le terminal du répertoire d’accueil de l’utilisateur vers le dossier pdftk nouvellement cloné.

cd pdftk

Dans le dossier sources PDFtk, démarrez le processus de construction en exécutant makepkg. Gardez à l’esprit que l’exécution de la commande makepkg téléchargera, compilera et installera automatiquement tous les fichiers de dépendance requis. Si, cependant, le générateur ne parvient pas à récupérer automatiquement ces dépendances, vous devrez les installer manuellement. Toutes les dépendances du package PDFtk AUR peuvent être trouvées à ce lien.

Feutre

Actuellement, il n’y a pas de package Fedora PDFtk dans les référentiels de logiciels. Heureusement, il est facile de faire fonctionner les packages OpenSUSE. Commencez par utiliser wget pour télécharger les packages nécessaires.

wget https://ftp.gwdg.de/pub/opensuse/distribution/leap/42.3/repo/oss/suse/x86_64/pdftk-2.02-10.1.x86_64.rpm

wget https://ftp.gwdg.de/pub/opensuse/distribution/leap/42.3/repo/oss/suse/x86_64/libgcj48-4.8.5-24.14.x86_64.rpm

À l’aide de la commande CD, déplacez le terminal vers le dossier Téléchargements.

cd ~/Downloads

Enfin, utilisez le gestionnaire de packages DNF pour installer PDFtk:

sudo dnf install libgcj48-4.8.5-24.14.x86_64.rpm pdftk-2.02-10.1.x86_64.rpm -y

OpenSUSE

sudo zypper install pdftk

Construire à partir de la source

Construire PDFtk à partir des sources ne demande pas trop d’efforts, car il y a des fichiers de construction préconfigurés dans le répertoire source. Pour créer le programme à partir des sources, vous devez d’abord télécharger le code. Pour obtenir le code, utilisez l’outil de téléchargement wget dans le terminal.

  Comment jouer à Hades sous Linux

Pour vous assurer que PDFtk se construit correctement, assurez-vous que GCC, GCJ et libgcj sont installés sur votre PC Linux.

wget https://www.pdflabs.com/tools/pdftk-the-pdf-toolkit/pdftk-2.02-src.zip

Ensuite, utilisez la commande Unzip pour extraire le dossier PDFtk Zip dans le dossier Download de votre PC Linux. Vous n’avez pas installé l’application Unzip? Recherchez «décompresser» dans votre gestionnaire de paquets et installez-le.

cd ~/Downloads

unzip pdftk-2.02-src.zip

L’extraction de l’archive zip source PDFtk devrait créer un dossier «pdftk-2.02-src» dans Téléchargements. Dans le terminal, utilisez la commande CD pour le saisir.

cd pdftk-2.02-src

Dans le dossier racine PDFtk, il ne peut pas y avoir grand-chose. Pour compiler quoi que ce soit, nous devons déplacer le terminal vers le sous-dossier PDFtk.

cd pdftk

Le sous-dossier PDFtk contient des dizaines de Makefiles spécialisés que l’utilisateur peut utiliser pour créer automatiquement pour différents systèmes d’exploitation. À l’aide de la commande LS, répertoriez le contenu du répertoire.

ls

Regardez et trouvez le Makefile spécifique dont vous avez besoin et démarrez le processus de construction avec la commande ci-dessous. N’oubliez pas de changer «Makefile.filename» dans la commande ci-dessous avec le nom du Makefile que vous devez utiliser.

make -f Makefile.filename

Utilisation de PDFtk

L’un des principaux atouts de PDFtk est sa capacité à joindre et diviser des fichiers PDF. Par exemple, pour diviser un fichier PDF de sorte que chaque page du document soit son propre fichier, essayez d’utiliser la commande d’éclatement:

  Comment composer discrètement un numéro d'urgence à partir de votre iPhone

pdftk testfile.pdf burst

PDFtk sortira les fichiers fractionnés au même emplacement que le fichier source.

Vous voulez réformer tous les fichiers PDF divisés en un seul? Commencez par renommer le fichier PDF d’origine (par sécurité).

mv testfile.pdf testfile.bak

Maintenant que le fichier PDF de test est sûr, recombinez tout avec PDFtk. Tout d’abord, utilisez la commande LS pour afficher les fichiers du répertoire.

ls

Ensuite, réexécutez la commande LS, mais cette fois, utilisez-la pour stocker tous les noms de fichiers PDF.

ls *.pdf >> pdf-filenames.txt

Attribuez le contenu de pdf-filenames.txt à une variable Bash. L’utilisation d’une variable dans cet exemple, plutôt qu’un caractère générique, signifie que lorsque nous combinons à nouveau le PDF, toutes les pages seront dans l’ordre.

value=$(<pdf-filenames.txt)

Enfin, recombinez le fichier PDF avec PDFtk et $ value.

pdftk $value cat output recombined-document.pdf