Postagem em destaque

Criando bot do Telegram em Shell script com ShellBot

Criando função upper e lower

Constantemente em nossos projetos ocorre a necessidade de realizar a tradução de um caractere ou uma sequencia de caracteres de minúsculo para maiúsculo ou vice-versa. O Shell oferece uma gama de possibilidades para essa tarefa, porém o comando mais conhecido é o tr com a seguinte sintaxe de uso:

tr SET1 SET2

Provavelmente você já deve ter conhecimento sobre o seu uso e claramente reconhece a sintaxe abaixo para conversão de:

minúsculo para maiúsculo: tr a-z A-Z
maiúsculo para minúsculo: tr A-Z a-z

Apesar de ser simples, considere o uso constante dessa expressão no decorrer do seu script e o quão massante é interpretá-lo durante a manutenção do código. A ideia é criar uma função afim de proporcionar uma semântica clara e de fácil entendimento.

Para nosso objetivo vou criar duas funções:

upper() - converter uma sequencia de caracteres de minúsculo para maiúsculo.
lower() - converter uma sequencia de caracteres de maiúsculo para minúsculo.

Sabemos que o comando tr lê a entrada padrão conectada pelo (|) PIPE e executa a tradução dos caracteres, isso facilita e muito o nosso trabalho; Veja o exemplo abaixo:


# Conversão para maiúscula.
upper()
{
    # Lê a sequencia de caracteres da entrada padrão
    # da função e realiza a conversão a conversão dos caracteres para maiúsculo.
    tr a-z A-Z
}

# Conversão para minúscula.
lower()
{
    # Lê a sequencia de caracteres da entrada padrão
    # da função e realiza a conversão a conversão dos caracteres para minúsculo. 
    tr A-Z a-z
}

Agora, basta redirecionar  o texto para a entrada padrão da função.

Clique na imagem para ampliar.

Como podemos perceber, só de bater o olho já sabemos o que será feito e assim o código fica mais legível e de fácil interpretação de terceiros.

Comentários

Contato

Nome

E-mail *

Mensagem *