O que dois pontos (': ') na sintaxe de resolução de variável bash significa? [duplicar]

Esta pergunta já tem respostas aqui :

Comentários

  • onde está o ponto e vírgula (;)?
  • Sim, parece uma duplicata. Mas o título do tópico original o torna insondável.

Resposta

Página de manual para 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. 

Portanto, se jvm_xmx já estiver definido como algo, ele será deixado inalterado.
Se ainda não estiver definido como algo, será definido como 1024.

Exemplo:

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

Comentários

  • Obrigado pela resposta. O que significa quando parameter é @? Por exemplo: ${@:10}
  • Melhor enviar uma pergunta totalmente nova para isso, se a página do manual não ' t cubra para você.

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *