Unix Bash Shell Programming se o diretório existir

Então, eu estou tentando entrar em uma instrução if em um script de shell bash mas acho que estou fazendo algo errado, de qualquer maneira aqui está o meu código de exemplo.

#!/bin/bash
read sd
if [ -d "~/tmp/$sd" ]; then
    echo "That directory exists"
else
    echo "That directory doesn't exists"
fi
;;

Estou apontando para o diretório correto? Eu quero que o usuário insira algo que será colocado em "sd" e se esse subdiretório existir, ele dirá, e se não, ele irá para o outro e dirá que ele não existe.

questionAnswers(2)

yourAnswerToTheQuestion