Quelle est la coquille de poisson équivalente à la bash suivante:
echo ${TEST:-1}
En bash, cela afficherait la valeur de TEST s'il y en avait un, ou 1 s'il n'y en avait pas.
Quelle est la coquille de poisson équivalente à la bash suivante:
echo ${TEST:-1}
En bash, cela afficherait la valeur de TEST s'il y en avait un, ou 1 s'il n'y en avait pas.
Réponses:
Je crois que vous avez besoin d'une variable temponaire (ou d'une fonction). S'il
$TEST
n'existe pas, il est étendu à rien et$test_or
ne contient que1
. Ce serait bien d'avoir un vrai moyen de le faire, mais actuellement la syntaxe est un problème, et il ne semble pas que ce soit vraiment nécessaire pour la plupart des utilisations.De plus, si tout ce que vous voulez, c'est modifier
$TEST
s'il n'existe pas déjà, vous pouvez utiliserset -q
.la source
Pour référencer une variable et fournir une valeur par défaut en ligne, vous pouvez utiliser une substitution de commande contenant un conditionnel qui s'applique
echo
aux deux branches.Comme il s'agit d'une sorte de verbose, vous pouvez initialiser la variable sur une ligne différente lorsqu'elle n'est pas définie.
Si vous voulez vraiment pouvoir remplacer une ligne par défaut, vous pouvez le faire dans une fonction en utilisant l'indirection, puis appeler cette fonction.
la source