command='*' , de fato, como você espera, defina o valor de $command como literal * . No entanto, quando você executar echo $command , o valor de $command será expandido para * , tornando seu comando echo * . O curinga é então expandido como de costume. Para evitar isso, cite o parâmetro que você está dando para echo :
$ v='*'
$ echo "$v"
*