¿Cómo uso expresiones regulares en scripts bash?

Quiero verificar si una variable tiene un año válido usando una expresión regular. Leer elmanual de bash Entiendo que podría usar el operador = ~

Mirando el siguiente ejemplo, esperaría ver "no está bien" pero veo "OK". ¿Qué estoy haciendo mal?

i="test"
if [ $i=~"200[78]" ]
then
  echo "OK"
else
  echo "not OK"
fi

Respuestas a la pregunta(2)

Su respuesta a la pregunta