O que significa cólon (':') na sintaxe de resolução de variável bash? [duplicado]

4
    

Esta pergunta já tem uma resposta aqui:

    

Eu preciso decodificar essa tarefa:

jvm_xmx=${jvm_xmx:-1024}
    
por user1065145 08.07.2015 / 10:39

1 resposta

6

página man do 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 configurado para algo, ele não será alterado.
Se ainda não estiver definido para algo, é 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
$
    
por 08.07.2015 / 11:01