Puede usar fgrep para especificar todas las palabras permitidas:
if $(echo "$WORD" | fgrep -wq -e dog -e cat -e horse) ; then
echo yes
else
echo no
fi
La -w
bandera solo coincide con palabras completas, la -q
bandera hace que opere en silencio (porque todo lo que necesitamos es el valor de retorno de la instrucción if para usar), y cada -e
patrón especifica un patrón para permitir.
fgrep
es la versión de grep que hace una coincidencia normal de cadenas en lugar de una coincidencia de expresiones regulares. Si es así grep
, debería serlo fgrep
, pero si no, es idéntico al uso grep
con la -F
bandera (por lo que simplemente reemplazaría el fgrep -wq
anterior con grep -Fwq
).
shopt -s nocasematch
podría ayudar si desea que la búsqueda no distinga entre mayúsculas y minúsculas.