Як надрукувати вихід дерева на pdf, не втрачаючи колір?


18

Я використовую наступну команду для друку структури каталогу у файл:

tree -h somepath/ > tree_of_somepath.txt

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

Будь-які ідеї?


Якщо вам не потрібен колір (як це робить ОП), ви все одно можете отримати корисний вихід дерева за допомогою tree -n -d --charset unicode > file. Це, безумовно, не так гарненько, але я використовую його з монохромним лазерним принтером, коли я випилюю свої файли даних тощо.
Джо

Відповіді:


20
  1. Встановіть такі залежності:

    sudo apt-get install aha wkhtmltopdf
    
  2. Збережіть treeкомандний вихід у HTML за допомогою aha:

    tree -C -h | aha > foo.html
    

    Зі treeсторінки чоловіка застосовується -Cколоризація:

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