Você só coloca um sinal de "
$" na frente da variável quando quer usar seu conteúdo, portanto corrija as linhas em negrito abaixo:
kdialog --title "Escolha" --radiolist 'Escolha uma das opções a seguir:' \
"opçao1" "Esta opção é boa" off \
"opçao2" "Esta opção é mai o meno" off \
"opçao3" "Esta opção é ruim" off # Tirei a \ daqui
1="Opção 1"
2="Opção 2"
3="Opção 3"
if [$1 = "Opção 1"];
then
kdialog --msgbox "Show de bola"
fi
if [$2 = "Opção 2"];
then
kdialog --msgbox "O que houve?"
fi
if [$3 = "Opção 3"];
then
kdialog -- "Tá maluco?"
fi
Mas vou te dizer que ele vai entrar nos três IF's. Acho que você ainda não entendeu o espírito do kdialog, ou do shell script.
Experimente colocar o comando kdialog jogando direto seu resultado para uma variável, e ai teste apenas ela.