Que signifie deux points (': ') dans la syntaxe de résolution de variable bash? [dupliquer]

Cette question a déjà des réponses ici :

Commentaires

  • où est le point-virgule (;)?
  • Oui, cela semble être un doublon. Mais le titre original du sujet le rend inaccessible.

Réponse

page de manuel pour bash:

${parameter:-word} Use Default Values. If parameter is unset or null, the expansion of word is substituted. Otherwise, the value of parameter is substituted. 

Donc, si jvm_xmx est déjà défini sur quelque chose, il reste inchangé.
Sil nest pas déjà défini sur quelque chose, il est défini sur 1024.

Exemple:

$ echo $jvm_xmx $ jvm_xmx=${jvm_xmx:-1024} $ echo $jvm_xmx 1024 $ jvm_xmx=2048 $ jvm_xmx=${jvm_xmx:-1024} $ echo $jvm_xmx 2048 $ 

Commentaires

  • Merci pour la réponse. Quest-ce que cela signifie quand parameter est @? Par exemple: ${@:10}
  • Il est préférable de soumettre une toute nouvelle question pour cela, si la page de manuel ne ' t le couvrir pour vous.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *