Opções de linha de comando. Mensagens formatadas de acordo com sua relevância. Tratamento de dados. E muito mais.

Documentação caprichada

Além de facilitar que os scripts criados por ela sejam bem documentados, a libtrilux inclui documentação de todas as suas funções – atualizada, e em português.

Para algumas funções, a documentação é breve, e vai direto ao ponto: quais são os parâmetros, e o que ela faz. Para outras, que lidam com ações mais complexas, a documentação é um tutorial completo, incluindo exemplos, dicas e mais - para uma amostra, consulte a documentação de funções como usage, mygetopts e xecho.

Um script de teste também acompanha a biblioteca, com exemplos básicos de uso de todas as funções.

A documentação das funções pode ser consultada rodando a libtrilux com a opção '-f', e também está disponível para consulta on-line, aqui mesmo no site:

Documentação da Libtrilux

Prática e eficiente

  • Opções e parâmetros

    O wrapper mygetopts permite ler todas as opções da linha de comando, curtas e longas, com ou sem parâmetros, com apenas uma linha no seu script.

  • Tratamento de data e hora

    Funções prontas para converter entre a representação de tempo típica das APIs da web (ISO 8601, RFC 3339) e a do Unix, e para operar com essas representações.

  • "percent-encoding"

    Conversão de e para o formato de strings da RFC 3986, usado para passar strings como parâmetros em URLs e APIs (urlencode e urldecode)

  • Formatação e semântica

    Uma variedade de maneiras de emitir mensagens coloridas, com destaques, etc., associadas a uma estrutura baseada em tipo de informação: alerta, erro, detalhe, debug, etc.

  • Strings mais fáceis

    Além de acesso fácil às opções que a shell oferece de forma críptica e cheia de {@!^#, a libtrilux também inclui funções de string que complementam as da shell.

  • Lógica expressiva

    Código mais claro com o suporte a testes explícitos de condições comuns, como is_number, in_array, is_set e mais, além de suporte a condições necessárias ('require').

  • Modos de interface

    A libtrilux vem 100% preparada – das opções às mensagens, passando pela construção do help – para criar scripts com suporte a modos de interface: verbose, quiet, debug, etc.

  • Tags e templates

    A libtrilux inclui um mecanismo fácil para substituir %%tags%% a partir do conteúdo de um array associativo. A página de documentação das funções, aqui neste site, é gerada e atualizada com esse recurso.

  • Compatibilidade BSD, Mac e GNU

    Wrappers para funções externas com implementação divergente como inverter ordem de linhas ('tac') ou converter uma data amigável para uma representação padrão Unix.

Download & código-fonte

A libtrilux é open source (licença Apache 2.0) e sem suporte – é só baixar, descompactar, gravar o arquivo libtrilux.sh em um diretório que faça parte do seu PATH, e usar. Faça o download:

Downloads

Após baixar, rode './libtrilux.sh -h' para ver a ajuda, que traz até um exemplo de como referenciar a biblioteca em seus scripts, e explica como acessar a lista de funções e sua documentação. O arquivo 'test_libtrilux.sh' testa todas as funções da biblioteca.

Leia também a FAQ que inclui respostas para usuários e também para desenvolvedores que desejem contribuir com código para a biblioteca.