Estoy tratando de escribir un script en bash que verifique la validez de una entrada del usuario.
Quiero hacer coincidir la entrada (digamos variable x) con una lista de valores válidos.
Lo que se me ocurrió en este momento es:
for item in $list
do
if [ "$x" == "$item" ]; then
echo "In the list"
exit
fi
done
Mi pregunta es si hay una forma más sencilla de hacer esto,
algo así como list.contains(x)para la mayoría de los lenguajes de programación.
Adición:
Dicha lista es:
list="11 22 33"
mi código hará eco del mensaje solo para esos valores, ya que listse trata como una matriz y no como una cadena, todas las manipulaciones de la cadena se validarán 1mientras que yo quiero que falle.
[[ $list =~ (^| )$x($| ) ]] && echo 'yes' || echo 'no'