Substitution de variables
De Linuxmemo.
(→valeur par défaut) |
|||
Ligne 9 : | Ligne 9 : | ||
${variable:=valeur} | ${variable:=valeur} | ||
+ | ==message d'erreur== | ||
+ | un message d'erreur plutôt que de donner une valeur par défaut lorsqu'une variable n'est pas définie. | ||
+ | ${variable:?message} | ||
+ | |||
+ | ==tester== | ||
+ | tester si une variable est non définie et renvoyer une valeur spécifique si elle est définie | ||
+ | ${variable:+valeur} | ||
+ | |||
+ | |||
+ | ==recherche et de remplacement== | ||
+ | recherche et de remplacement du shell dans les chaînes de caractères contenues dans des variables | ||
+ | ${variable/motif/remplacement} | ||
+ | Ce remplacement n'est donc effectué qu'une seule fois. Si l'on veut que toutes les occurrences du motif soient remplacées par la chaîne de remplacement, il suffit de doubler le premier / : | ||
+ | ${variable//motif/remplacement} | ||
==Astuces== | ==Astuces== | ||
for i in $(ls *.m4a);do avconv -i $i ${i/.m4a/.mp3} ;done | for i in $(ls *.m4a);do avconv -i $i ${i/.m4a/.mp3} ;done |
Version du 25 novembre 2017 à 21:55
sources: http://casteyde.christian.free.fr/system/linux/guide/online/x3679.html
Sommaire |
valeur par défaut
valeur par défaut pour le cas où cette variable ne contient rien ou n'est pas définie
${variable:-valeur}
Notez que la variable reste indéfinie après la substitution.
Pour fixer la valeur de la variable à cette valeur par défaut en plus d'effectuer la substitution
${variable:=valeur}
message d'erreur
un message d'erreur plutôt que de donner une valeur par défaut lorsqu'une variable n'est pas définie.
${variable:?message}
tester
tester si une variable est non définie et renvoyer une valeur spécifique si elle est définie
${variable:+valeur}
recherche et de remplacement
recherche et de remplacement du shell dans les chaînes de caractères contenues dans des variables
${variable/motif/remplacement}
Ce remplacement n'est donc effectué qu'une seule fois. Si l'on veut que toutes les occurrences du motif soient remplacées par la chaîne de remplacement, il suffit de doubler le premier / :
${variable//motif/remplacement}
Astuces
for i in $(ls *.m4a);do avconv -i $i ${i/.m4a/.mp3} ;done