Se você usar uma matriz de valores em vez de variáveis individuais, a inicialização será mais bonita:
#!/bin/bash
# set default values:
values=( "val1" "val2" "val3" ) # or values=()
case "$somevalue" in
1) values=( "$@" ) ;; # get values from command line
2) values=( "some" "other" "values" ) ;; # use other values
*) # other cases uses default values
esac