Como imprimir a saída da árvore para pdf sem perder a cor?


18

Eu uso o seguinte comando para imprimir uma estrutura de diretórios em um arquivo:

tree -h somepath/ > tree_of_somepath.txt

treefornece uma boa saída colorida no terminal, mas, como esperado, isso não pode ser redirecionado para um arquivo de texto. Gostaria de imprimir a saída de treeum arquivo pdf e preservar a cor.

Alguma ideia?


Se você não precisar da cor (como o OP precisa), ainda poderá obter a saída em árvore utilizável usando tree -n -d --charset unicode > file. Definitivamente não é tão bonita, mas eu usá-lo com uma impressora laser monocromática, quando estou pastoreando meus arquivos de dados, etc ..
Joe

Respostas:


20
  1. Instale as seguintes dependências:

    sudo apt-get install aha wkhtmltopdf
    
  2. Salve sua treesaída do comando em html com aha:

    tree -C -h | aha > foo.html
    

    Na treepágina de manual, -Cforça a coloração:

        -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. Por fim, exporte o html para pdf com wkhtmltopdf:

    wkhtmltopdf foo.html foo.pdf
    

Exemplo:

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

insira a descrição da imagem aqui


Perfeito, embora eu omitido o --black de poupar algum toner, quando aterra em papel;)
Bruni

@Bruni Boa ideia :) Deixe-me editar a resposta
Sylvain Pineau

$ wkhtmltopdf foo.html foo.pdf wkhtmltopdf: não é possível conectar ao servidor X
sree
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.