Voir le fichier pdf dans le terminal

50

Je souhaite afficher les pdffichiers directement sur notre cluster plutôt que de les copier sur mon ordinateur local, puis de les ouvrir dans un visualiseur.

Comment visualiser un pdffichier dans mon terminal?

bioinformaticien
la source
2
Si vous vous connectez au cluster avec ssh, je vous recommande d'utiliser SSHFS. Il fournit une solution commune à tous les problèmes de type «Comment faire X avec des fichiers distants».
Gilles 'SO- arrête d'être méchant'
Rendre le PDF en framebuffer
mardi

Réponses:

53

Dans de nombreux systèmes, less utilise lesspipe, qui peut gérer pdftotext automatiquement. Par conséquent, vous pouvez immédiatement essayer

 less file.pdf

qui montrera la sortie de pdftotextdans less.

Jari Laamanen
la source
26

Je suppose qu'il n'est pas possible de voir un fichier PDF dans un terminal, mais vous pouvez en vérifier le contenu en convertissant un fichier PDF en texte. Vous pouvez le faire comme:

pdftotext a.pdf

Il produira un fichier.txt que vous pourrez lire dans VIM.

Pour ubuntu-variante, ce binaire est disponible dans le package suivant.

poppler-utils

SHW
la source
4
Il est possible de voir un fichier PDF dans le terminal, comme suit : pdftotext -layout file.pdf - | less(c'est comme cela que le lesspipescript par défaut d'Ubuntu le fait)
villapx
5

Lorsque je souhaite "afficher un fichier pdf dans un terminal", cela signifie pour moi que je souhaite réellement voir un fichier PDF non compressé.

pdftk in.pdf output out.pdf uncompress

Je me suis toujours demandé pourquoi les deux less in.pdfet less out.pdfne me donnaient que des chaînes de texte dans le PDF (en excluant les commandes PDF au texte seulement que j'attendais out.pdf).

Eh bien, cela se produit parce que lesspipe suppose que je veux pdftotextêtre exécuté en premier - et comme je ne le fais pas ici, je dois désactiver spécifiquement le lesspipe en réglant LESSOPENla variable d'environnement à néant; C'est:

$ LESSOPEN="" less out.pdf

Et enfin, je peux voir le code PDF non compressé en utilisant less

Sdaau
la source
2

Encore une autre solution ... Puis-je vous recommander l’ancien utilitaire mc?

MC(1)                       GNU Midnight Commander
mc - Visual shell for Unix-like systems.

mcest conçu autour de la gestion de fichier basée sur du texte, et il a une option "view" ( F3clé) qui convertira automatiquement .pdfs en texte pour une visualisation sans interface graphique. Le code qui effectue cette conversion fait partie de mclui-même et ne nécessite donc pas de conversion par d'autres utilitaires. (Possède également un visualiseur .html natif pour WIW.)

Richard Sonnenfeld
la source
1

J'ai essayé ce qui suit avec de bons résultats:

pdftotext filname.pdf - | less
Jmunsch
la source
0

Une autre solution consiste à utiliser la commande gnome-open

gnome-open youfile.pdf

Si vous avez connecté votre serveur avec l'option -X (ssh -X)

bioinformaticien
la source
2
Comment cela visualise-t-il le fichier PDF dans le terminal ?
un CVn
Pas sur le terminal, mais peut afficher un pdf sur la commande émise depuis le terminal.
bioinformaticien
5
Bien que cela soit vrai, le PO a spécifiquement demandé une approche basée sur les terminaux.
un CVn
0

Si vous utilisez emacsvotre ordinateur ( emacspréinstallé sur Ubuntu 18.04), vous pouvez pratiquement ouvrir et afficher un fichier PDF sur un serveur distant en appuyant sur Ctrl-x Ctrl-ffind-file), puis en tapant et en appuyant /user@hostname:/path/to/my.pdfsur Entrée (notez le premier /). Vous serez ensuite invité à entrer le mot de passe du serveur et le voilà! Vous pouvez voir le pdf dans emacs.

Naviguer à travers le PDF à l'intérieur emacs

Utilisez spacepour descendre d'une page et backspaced'une page vers le haut. Vous pouvez également utiliser les touches fléchées pour faire défiler une seule page si elle ne rentre pas à l'écran.

Zoom

Zoomez en frappant Ctrl-x Ctrl-+. Zoomez plus en frappant +seulement. Ou effectuer un zoom arrière en appuyant sur -.

Le contexte

Oui, vous pouvez vous connecter à un serveur distant à partir de l'intérieur emacsà l'aide du package intégré trampqui fonctionne aussi simplement que je l'ai expliqué ci-dessus. Cette méthode fonctionne non seulement pour les fichiers PDF, mais pour tout autre type de fichier, tel que des images.

Pooya
la source