Переглянути pdf-файл у терміналі


50

Я хочу переглядати pdfфайли безпосередньо на нашому кластері, а не копіювати їх на свою локальну машину, а потім відкривати їх у переглядачі.

Як я можу переглянути pdfфайл у своєму терміналі?



2
Якщо ви підключаєте gg кластер до ssh, рекомендую використовувати SSHFS. Він надає загальне рішення для всіх проблем "Як зробити X з віддаленими файлами".
Жил 'ТАК - перестань бути злим'

Візуалізуйте PDF у фреймбуфер
炸鱼 薯条 德里克

Відповіді:


53

У багатьох системах менше використовується меншеpipe, який може обробляти pdftotext автоматично. Тому можна відразу спробувати

 less file.pdf

який покаже вихід pdftotextв less.


26

Я думаю, що неможливо побачити PDF-файл у терміналі, але ви можете перевірити його вміст, перетворивши PDF-файл у текст. Це можна зробити так:

pdftotext a.pdf

Він створить файл.txt, який ви можете прочитати у VIM.

Для варіанту ubuntu цей двійковий файл доступний у наступному пакеті.

poppler-утиліти


4
Це є можливість побачити файл PDF в терміналі, наприклад , так: pdftotext -layout file.pdf - | less(це як по замовчуванням в Ubuntu lesspipeскрипт робить це)
villapx

5

Коли я хочу "переглянути pdf-файл в терміналі", це для мене означає, що я хочу насправді побачити нестиснений PDF, я роблю:

pdftk in.pdf output out.pdf uncompress

Мені завжди було цікаво, чому обидва less in.pdfі less out.pdfдають мені лише текстові рядки в PDF (і виключаючи текстові PDF-команди, яких я очікував out.pdf).

Що ж, це відбувається через меншу трубу, якщо я припускаю, що я хочу pdftotextзапуститись першим - а оскільки я цього не роблю, мені доведеться спеціально вимкнути менше труби, встановивши LESSOPENзмінну середовища на ніщо; це:

$ LESSOPEN="" less out.pdf

І нарешті, я можу переглянути нестиснений код PDF за допомогою less


2

Ще одне рішення ... Чи можу я порекомендувати вам стародавню утиліту mc.

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

mcрозроблений на основі текстового файлового управління, і він має опцію ( F3клавішу) перегляду, яка автоматично перетворює .pdfs в текст для перегляду без GUI. Код, який робить це перетворення, є частиною mcсам по собі, тому не потребує перетворення іншими утилітами. (Також є власний .html переглядач для WIW.)


1

Я спробував таке з хорошими результатами:

pdftotext filname.pdf - | less

0

Ще одне рішення - використовувати команду gnome-open

gnome-open youfile.pdf

За умови, що ви ввійшли у свій сервер за допомогою параметра -X (ssh -X)


2
Як це переглядає PDF-файл у терміналі ?
CVn

Не на терміналі, але може переглядати pdf про видачу команди з терміналу.
біоінформатик

5
Хоча це правда, ОП спеціально попросили термінальний підхід.
CVn

0

Якщо ви працюєте emacsна своїй машині ( emacsпопередньо встановлена ​​на Ubuntu 18.04), ви можете відкрити та побачити pdf на віддаленому сервері, натиснувши Ctrl-x Ctrl-f(на find-file), а потім наберіть /user@hostname:/path/to/my.pdfта натисніть Enter (зверніть увагу на перше /). Тоді вам буде запропоновано ввести пароль сервера і ось він! Ви можете побачити pdf всередині emacs.

Навігація по PDF всередині emacs

Використовуйте spaceдля переходу на одну сторінку вниз та backspaceна одну сторінку вгору. Ви також можете використовувати клавіші зі стрілками для прокрутки однієї сторінки, якщо вона не вміщується на екрані.

Збільшити

Збільшити масштаб, натиснувши Ctrl-x Ctrl-+. Збільшити масштаб можна +лише натисканням . Або зменшити масштаб більше, натиснувши -.

Контекст

Так, ви можете підключитися до віддаленого сервера зсередини, emacsвикористовуючи вбудований пакет, trampякий працює так само просто, як я пояснив вище. Цей метод працює не тільки для pdf, але і для будь-якого іншого типу файлів, наприклад зображень.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.