Expansão de parâmetros no bash

26 26America/Sao_Paulo dezembro 26America/Sao_Paulo 2017 Off Por Sidney silva santos

Se quiser o valor de uma variável, você deve colocar o $ na frente  (por exemplo, $CIDADE). Essa é apenas uma abreviação para a notação ${CIDADE}; as chaves são utilizadas quando o valor do parâmetro tem de ser colocado ao lado de outro texto sem um espaço. O bash tem regras especiais que permitem expandir o valor de uma variável de diferentes maneiras.

Conhecer todas as regras é provavelmente um exagero para uma rápida introdução  a scripts de shell, mas a lista a seguir apresenta algumas construções comuns que provavelmente você verá em scripts de bash que encontrador no seu sistema Linux.

  • ${var:-valor} — Se a variável estiver em branco ou vazia, expande isso para valor.
  • ${var#padronizar} — Corta a correspondência mais curta para o padrão da frente do valor de var.
  • ${var##padronizar} — Corta a correspondência mais longa para o padrão a partir da frente do valor de var.
  • ${var%padronizar} — Corta a correspondência mais curta para o padrão a partir do final do valor de var.
  • ${var%%padronizar} — Corta a correspondência mais longa para o padrão a partir do final do valor de var.

No exemplo a seguir, DIRNOMEARQUIVO é definido como /home/sidney/read_script.sh. Em  seguida, a variável ARQUIVO é configurada como /read_script.sh e DIR é configurada como  /home/sidney. Na variável NOME, o nome do arquivo é cortado para simplesmente read_script, portanto, na variável EXTENSION, a extensão do arquivo é configurada como sh.

Captura de tela de 2017-12-26 11-22-35.png

 

Anúncios