ดูไฟล์ pdf ในเทอร์มินัล


50

ฉันต้องการดูpdfไฟล์ในคลัสเตอร์ของเราโดยตรงแทนที่จะคัดลอกไฟล์ไปยังเครื่องของฉันแล้วเปิดไฟล์เหล่านั้นในมุมมอง

ฉันจะดูpdfไฟล์ในเทอร์มินัลของฉันได้อย่างไร



2
หากคุณเชื่อมต่อกับคลัสเตอร์ด้วย ssh ฉันแนะนำให้ใช้ SSHFS มันมีวิธีแก้ไขปัญหาทั่วไปสำหรับปัญหาทั้งหมด "ฉันจะทำ X กับไฟล์ระยะไกล" ได้อย่างไร
Gilles 'SO- หยุดความชั่วร้าย'

แสดง PDF ไปที่ framebuffer
炸鱼薯条德里克

คำตอบ:


53

ในหลาย ๆ ระบบจะใช้ lesspipe น้อยลงซึ่งสามารถจัดการ pdftotext ได้โดยอัตโนมัติ ดังนั้นคุณสามารถลองได้ทันที

 less file.pdf

ซึ่งจะแสดงผลลัพธ์ของในpdftotextless


26

ฉันเดาว่ามันเป็นไปไม่ได้ที่จะเห็นไฟล์ PDF ใน terminal แต่คุณสามารถตรวจสอบเนื้อหาโดยการแปลงไฟล์ PDF เป็นข้อความ คุณสามารถทำสิ่งนี้เป็น:

pdftotext a.pdf

มันจะสร้างไฟล์ a.txt ซึ่งคุณสามารถอ่านเป็น VIM

สำหรับ ubuntu-variant ไบนารีนี้มีอยู่ในแพ็คเกจต่อไปนี้

poppler-utils


4
มันเป็นไปได้ที่จะเห็นไฟล์ PDF ใน terminal เช่นดังนั้น: pdftotext -layout file.pdf - | less(ว่าเป็นวิธีที่เริ่มต้นของ Ubuntu lesspipeสคริปต์ไม่ได้)
villapx

5

เมื่อฉันต้องการ "ดูไฟล์ pdf ใน terminal" นั่นสำหรับฉันหมายความว่าฉันต้องการดู PDF ที่ไม่มีการบีบอัดจริง ๆ ฉัน:

pdftk in.pdf output out.pdf uncompress

ฉันมักจะสงสัยว่าทำไมทั้งสองless in.pdfและless out.pdfให้สตริงข้อความใน PDF (และไม่รวมคำสั่ง PDF แบบข้อความอย่างเดียวที่ฉันคาดไว้out.pdf)

นั่นเกิดขึ้นเพราะ lesspipe สมมติว่าฉันต้องการpdftotextเรียกใช้ก่อน - และเนื่องจากที่นี่ฉันทำไม่ได้ฉันต้องปิดการใช้งาน lesspipe โดยเฉพาะโดยการตั้งค่าLESSOPENตัวแปรสภาพแวดล้อมเป็นอะไร นั่นคือ:

$ LESSOPEN="" less out.pdf

และสุดท้ายฉันก็สามารถดูรหัส PDF ที่ไม่มีการบีบอัดได้โดยใช้ less


2

อีกวิธีหนึ่ง ... ขอให้ฉันแนะนำยูทิลิตี้โบราณแก่mcเจ้า

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

mcได้รับการออกแบบโดยใช้การจัดการไฟล์แบบข้อความและมีตัวเลือก "มุมมอง" ( F3คีย์) ซึ่งจะแปลง. pdf เป็นข้อความให้ดูโดยอัตโนมัติโดยไม่ต้องใช้ GUI รหัสที่ใช้ในการแปลงนี้เป็นส่วนหนึ่งของmcตัวเองดังนั้นจึงไม่จำเป็นต้องมีการแปลงโดยโปรแกรมอรรถประโยชน์อื่น ๆ (นอกจากนี้ยังมีโปรแกรมดู. html ดั้งเดิมสำหรับ WIW)



0

ทางออกอีกวิธีหนึ่งคือการใช้คำสั่ง gnome-open

gnome-open youfile.pdf

โดยมีเงื่อนไขว่าคุณได้เข้าสู่ระบบเซิร์ฟเวอร์ของคุณด้วยตัวเลือก -X (ssh -X)


2
สิ่งนี้จะดูไฟล์ PDF ในเทอร์มินัลได้อย่างไร
CVn

ไม่ใช่ในเทอร์มินัล แต่สามารถดู pdf ในการออกคำสั่งจากเทอร์มินัล
bioinformatician

5
ในขณะที่เป็นจริง OP ได้ขอเฉพาะวิธีการตาม terminal
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โดยใช้แพคเกจการ build-in trampที่ทำงานง่ายเหมือนที่ฉันอธิบายข้างต้น วิธีการนี้ใช้งานได้ไม่เพียง แต่สำหรับ pdf แต่สำหรับไฟล์ประเภทอื่นเช่นรูปภาพ

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.