expr - Definição e uso do comando

Neste artigo será apresentado o comando expr. Este comando é utilizado para cálculos feitos em linha de comando em Shell Scripts. Funciona com expressões numéricas, expressões lógicas ou expressões regulares e Strings.

[ Hits: 21.708 ]

Por: Perfil removido em 29/06/2015


Resumo e revisão



1. Expressões numéricas (assumindo que $a e $b são números inteiros, senão haverá erro):

expr $a \+ $b
Realiza a soma de $a com $b.

expr $a \- $b
Realiza a subtração de $a com $b.

expr $a \* $b
Realiza a multiplicação de $a com $b.

expr $a \/ $b
Realiza a divisão inteira de $a com $b.

expr $a \/ $b
Calcula o resto da divisão de $a com $b.

expr \-$a
Inverte o sinal do valor de $a.

2. Expressões lógicas (lembrando que 0 quer dizer falso e 1 verdadeiro, a e b podem ser números ou strings):

expr $a \< $b
Retorna 1, se $a for menor que $b. Caso contrário, zero.

expr $a \<= $b
Retorna 1 se $a for menor ou igual que $b. Caso contrário, zero.

expr $a \> $b
Retorna 1 se $a for maior que $b. Caso contrário, zero.

expr $a \>= $b
Retorna 1 se $a for maior ou igual que $b. Caso contrário, zero.

expr $a \= $b
Retorna 1 se $a for igual a $b. Caso contrário, zero.

expr $a \!\= $b
Retorna 1 se $a for diferente de $b. Caso contrário, zero.

expr $a | $b
Retorna $a se $a não é nem conteúdo nulo nem 0, caso contrário, retorna o valor de $b.

expr $a & $b
Retorna $a se nenhum argumento for nulo ou igual a 0, caso contrário, retorna 0.

3. Expressões regulares e strings:
  • + STRING :: interpreta o que vem depois de + como uma string, mesmo sendo palavra reservada ou um dos operadores.
  • STRING : REGEX :: realiza uma busca em STRING usando por padrão REGEX.
  • match STRING REGEX :: o mesmo que o anterior STRING : REGEX.
  • substr STRING POSIÇÃO TAMANHO :: pega um pedaço de STRING a partir de POSIÇÃO e com TAMANHO como número de caracteres. Não aceita parâmetros negativos.
  • index STRING CHARS :: retorna em qual posição de STRING foi encontrado o caractere CHARS.
  • length STRING :: conta a quantidade de caracteres presentes em STRING.

Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. Cálculos com expressões lógicas
   3. Cálculos com expressões regulares e strings
   4. Resumo e revisão
   5. Saída de erros
Outros artigos deste autor

É possível ganhar dinheiro com Software Livre?

Criando Arrays, Arrays Multidimensionais e Hashes em BASH Script

Atualizar Switch 3Com 4400

Formatando o bash com cores e efeitos

Incrementando as funções do KDE com "servicemenus"

Leitura recomendada

Introduzindo um pouco mais a fundo o shell script

Monitoramento automático de logs e alertas por e-mail - Fácil e explicado

Programando em Shell Script para iniciantes

AWK - Manipulação de arquivos de texto

Enviar e-mail pelo terminal com mutt

  
Comentários
[1] Comentário enviado por fabio em 29/06/2015 - 16:29h

Muito bom o artigo! Esse comando é uma mão-na-roda.

[2] Comentário enviado por morvan em 06/07/2015 - 11:06h

Bom dia.
Excelente artigo. Ferramenta muito útil, ainda que pouquíssimo conhecida | utilizada; eu a utilizo, por exemplo, em scripts (claro) e também quando preciso calcular tamanho de partições (normalmente, os CD de Recuperação são muito parcimoniosos de ferramentas, como calculadora, gráfica, no caso, daí recorro ao Console do Sistema).
Morvan, Usuário GNU-Linux #433640. Seja Legal; seja Livre. Use GNU-Linux.

[3] Comentário enviado por removido em 09/07/2015 - 02:50h

Obrigado a todos.

Faltou uma coisa: o limite dos cálculos numéricos é apenas até números de 64 bits, positivos e negativos, com bit identificador de sinal.
--
http://s.glbimg.com/po/tt/f/original/2011/10/20/a97264_w8.jpg

Encryption works. Properly implemented strong crypto systems are one of the few things that you can rely on. Unfortunately, endpoint security is so terrifically weak that NSA can frequently find ways around it. — Edward Snowden


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts