Le remplacement de variables en shell Bash

Décembre 2016


Le remplacement de variables

Introduction


Il peut s'avérer utile de s'assurer qu'une variable est bien définie avant de procéder à son remplacement, ou tout simplement de s'assurer que celle-ci n'est pas vide, et dans ce cas de l'initialiser avec une valeur par défaut.

Les différentes formes de remplacement de variables


Expression   Interprétation 

$var  Remplacée par la valeur de la variable "$var" si elle est 
  définie. Sinon par rien. 

${var}  Remplacée par la valeur de la variable "$var" si elle est 
  définie. Sinon par rien. Cette forme est recommandée, afin 
  de se prémunir de certaines incohérences en cas de concaténations de 
  chaînes de caractères. 

${var:-défaut} Remplacée par la valeur de la variable "$var" si elle est 
  définie. Sinon par la valeur "défaut". 

${var:+défaut} Initialisée la variable "$var" avec la valeur "défaut" si 
  elle est définie. Dans le cas contraire (non définie) la laisser 
  vide. 

${var:?"Message"} Remplacée par la valeur de la variable "$var" si elle 
  est définie. Dans le cas contraire, le shell affiche un message d'erreur 
  défini en lieu et place de "Message". Très utile pour détecter les 
  variables indéfinies et dans ce cas, interrompre le script en cours. 
  Penser à quoter "Message" s'il contient des caractères spéciaux. 

${var:=défaut} Remplacée par la valeur de la variable "$var" si elle est 
  définie. Sinon créer et initialiser la variable "$var" avec la 
  valeur "défaut".

A voir également :

Ce document intitulé «  Le remplacement de variables en shell Bash  » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.