วิธีการพิมพ์ผลลัพธ์ของต้นไม้เป็น pdf โดยไม่สูญเสียสี?


18

ฉันใช้คำสั่งต่อไปนี้เพื่อพิมพ์โครงสร้างไดเรกทอรีไปยังไฟล์:

tree -h somepath/ > tree_of_somepath.txt

treeให้เอาต์พุต colorized ที่ดีบนเทอร์มินัล แต่ตามที่คาดไว้สิ่งนี้ไม่สามารถเปลี่ยนเส้นทางไปยังไฟล์ข้อความได้ ฉันต้องการพิมพ์ผลลัพธ์ของtreeไฟล์ pdf และรักษาสี

ความคิดใด ๆ


หากคุณไม่ต้องการสี (เช่นเดียวกับ OP) คุณยังสามารถใช้ทรีเอาท์พุตต้นไม้ที่ใช้งานtree -n -d --charset unicode > fileได้ แน่นอนว่ามันไม่สวย แต่ฉันใช้กับเครื่องพิมพ์เลเซอร์ขาวดำเมื่อฉันต้อนไฟล์ข้อมูลของฉันและอื่น ๆ
Joe Joe

คำตอบ:


20
  1. ติดตั้งการอ้างอิงต่อไปนี้:

    sudo apt-get install aha wkhtmltopdf
    
  2. บันทึกtreeเอาต์พุตคำสั่งของคุณเป็น html ด้วยaha:

    tree -C -h | aha > foo.html
    

    จากtreeหน้า man -Cบังคับ colorization:

        -C     Turn colorization on always, using built-in color defaults
               if the LS_COLORS environment variable is not set. Useful to
               colorize output to a pipe.
    
  3. ในที่สุดก็ส่งออก html เป็น pdf ด้วยwkhtmltopdf:

    wkhtmltopdf foo.html foo.pdf
    

ตัวอย่าง:

cd /tmp
tree -C -h | aha > foo.html
wkhtmltopdf foo.html foo.pdf
xdg-open foo.pdf

ป้อนคำอธิบายรูปภาพที่นี่


ที่สมบูรณ์แบบ แต่ฉันละเว้น --black เพื่อประหยัดหมึกบางเมื่อที่ดินบนกระดาษ;)
Bruni

@Bruni ความคิดที่ดี :) ให้ฉันแก้ไขคำตอบ
Sylvain Pineau

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