Você pode usar esta sintaxe:
"${var:-word}"
Isso substituirá o valor da variável $var
se estiver definido e não vazio e, se não, substituirá o que for dado como word
. Por exemplo:
$ var=foo
$ echo "${var:-bar}"
foo
$ var=
$ echo "${var:-bar}"
bar
Então, no seu caso específico, você pode usar:
echo "${var:--}"
Ou mais seguro e mais portátil :
printf '%s\n' "${var:--}"