A substitução de variáveis em shell Bash

Março 2017


Introdução


Pode ser útil assegurar-se que uma variável está bem definida antes de proceder à SUS substituição, ou simplesmente de assegurar-se que esta não está vazia, e neste caso de incializar com um valor padrão.

As diferentes formas de substituição de variáveis


Expressão interpretação  

$var  Substituída  pelo valor ="$var" se ela é definida. Senão por nada. 

${var}  Substituída pelo valor da variável "$var" se ela é definida. Senão por nada. Esta forma é recomendada, para se precaver de certas incoerências de concatenação de cadeias de caracteres.  

${var:-défaut} Substituída pela variável "$var" se ela é definida. Senão pelo valor "padrão". 

${var:+défaut} Inicializada a variável "$var" com o valor "padrão" se ela é definida. No caso contrário (não definida) deixá-la vazia.   
  

${var:?"Message"} Substituida pelo valor da variável "$var" se ela é definida. Em caso contrário, o Shell  afixa uma mensagem de erro definidi no lugar e na posição de "mensagem". Muito útil para detectar as variáveis indefinidas e nestes casos, interromper o script em andamento. 
  Pensar a  à cotar "Mensagem" se ela contém caracteres especiais. 

${var:=défaut} Substituída pelo valor da variável "$var" se ela é definida. 
Senão criar e inicializar a variável "$var" com o valor « padrão". 

Tradução feita por Ana Spadari

Veja também

Artigo original publicado por . Tradução feita por ninha25.
Este documento, intitulado 'A substitução de variáveis em shell Bash', está disponível sob a licença Creative Commons. Você pode copiar e/ou modificar o conteúdo desta página com base nas condições estipuladas pela licença. Não se esqueça de creditar o CCM (br.ccm.net) ao utilizar este artigo.