Sim, é um pouco hacky. Vamos começar instalando dois pacotes:
sudo apt-get install python-excelerator w3m
A partir daí, usamos um script que vem com python-excelerator
para converter o documento em um arquivo HTML. Nós então canalizamos isso em um navegador de linha de comando ( w3m
) e o exibimos.
py_xls2html spreadsheet.xls 2>/dev/null | sed 's/"//g' | w3m -dump -T 'text/html'
Você pode criar uma função bash ou um alias com isso se não quiser continuar digitando. Deve dar uma saída assim:
Sheet = Sheet1
┏━━━━┯━━━┯━━━━━┯━━━━━━━━━━━━┓
┃this│is │a │spreadsheet ┃
┠────┼───┼─────┼────────────┨
┃it │is │very │nice ┃
┠────┼───┼─────┼────────────┨
┃this│has│three│rows ┃
┗━━━━┷━━━┷━━━━━┷━━━━━━━━━━━━┛
Sheet = Sheet2 Sheet = Sheet3
Muito pretteh. Obviamente, isso não suportará nenhum tipo de macro, edição ou interatividade. Isto é puramente um espectador. Você também pode trabalhar para retirar as aspas que envolvem as coisas. Eu não estou particularmente incomodado por eles neste momento.
Se você não precisa que seja tão tabular, pode simplesmente ter algo assim:
py_xls2csv spreadsheet.xls 2>&1 | less
Você pode ir além disso e exibi-lo de uma maneira um pouco mais agradável:
py_xls2csv spreadsheet.xls 2>&1 | grep '^"' | sed 's/"//g' | column -s, -t | less -#2 -N -S
Isso fornece o seguinte:
1 this is a spreadsheet
2 it is very nice
3 this has three rows