O fish shell não implementou, por algum motivo, conjuntos de caracteres. Supondo que você esteja usando a versão mais recente, use o comando de string
if string match --quiet --regex '[a-z]' $var >/dev/null
echo $var contains a letter
else
echo $var has no letters
end
Estou usando correspondência de regex devido aos padrões mínimos de glob em peixes