${var:-padrão}
Se a variável estiver vazia, vale o padrão — sem tocar na variável.
O operador mais usado da expansão de parâmetros: devolve o valor de var, ou o padrão quando ela está vazia ou não existe. A variável em si não muda.
Os dois-pontos são a mira fina: ${var-padrão}, sem eles, só aplica o padrão quando a variável não existe — vazia passa como vazia. A distinção vale para toda a família :-, :=, :? e :+.
$ unset EDITOR
$ echo "abrindo com ${EDITOR:-nano}"
abrindo com nano
$ EDITOR=vim
$ echo "abrindo com ${EDITOR:-nano}"
abrindo com vim