VIVEZ LE
FOOTBALL !

Le remplacement de variables en shell Bash


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".
Publié par jipicy - Dernière mise à jour le 14 juillet 2010 à 10:49 par aquarelle
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.
Suggestions
  •  Le remplacement de variables en shell Bash
  •  Visibilite des variables dans un shell » Meilleure réponse: C'est un problème de "Père & Fils". Après le "done", on revient dans le processus principal. une solution consiste à rester dans le processus fils en ajoutant un jeu de parenthèse. $ var=rien; cat - | ( while read f do var=$f done ) ech
  •  Comment récupérer le résultat d'une commande dans une variable » Fiches pratiques : Comment récupérer le résultat d'une commande dans une variable Préambule Syntaxe Exemples Préambule Il est bien souvent nécessaire de récupérer le résultat d'une commande (ou de son code retour) dans une variable afin de pouvoir...
  •  [script/bash] Variable d'environnement (Résolu) » Bonjour, J'écris un script qui appelle une variable d'environnement: tail $[$fichier] la variable $fichier etant definie dans le script. il reconnait la variable mais refuse d'executer la commande tail. Le message d'erreur est du style: ./script: line...
  •  UNIX Shell Bash equivalent variable username (Résolu) » Meilleure réponse: LOGNAME contient le nom du login de l'utilisateur, sinon voir les commandes whoami, id
  •  Guide d'utilisation du Shell pour débutant » Fiches pratiques : SHELL BASH - GUIDE D'UTILISATION - Niveau Débutant Introduction Appel aux membres CCM II. C'est quoi le shell ? III. Comment accéder à la ligne de commande IV. Les consoles virtuelles Exemple : Accéder à la console 3 depuis l'interface...
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?
Comment récupérer le résultat d'une commande dans une variable
Bash - Les paramètres