Hola a todos, tengo un problema con unos bucles y me estoy volviendo loco ya que he intentado varios metodos y no consigo solucionarlo.
De forma muy resumida lo que hace mi código es pedirle a un usuario que introduzca unos valores que son los GPIO de una raspberry, que posteriormente manejaré mediante un bucle for para ir encendiéndolos, hasta aquí bien, el problema viene cuando intento parar el bucle for mediante un while.
Lo que pretendo es que el bucle for siga contando de 1 hasta 27, en 27 debería salir del bucle for, es decir, aunque el usuario introduzca un valor superior a 27, siempre debería de finalizar el bucle for en 27.
Este es el código:
Lo que me sucede con este código es que el for sigue contando después de llegar al valor 27, he añadido una variable "max" para intentar frenar al for, pero ni con esas, cualquier pista me seria de gran ayuda, gracias y un saludo!
De forma muy resumida lo que hace mi código es pedirle a un usuario que introduzca unos valores que son los GPIO de una raspberry, que posteriormente manejaré mediante un bucle for para ir encendiéndolos, hasta aquí bien, el problema viene cuando intento parar el bucle for mediante un while.
Lo que pretendo es que el bucle for siga contando de 1 hasta 27, en 27 debería salir del bucle for, es decir, aunque el usuario introduzca un valor superior a 27, siempre debería de finalizar el bucle for en 27.
Este es el código:
Código [Seleccionar]
read -p "introduce valor inicial: " gini
read -p "introduce valor final: " gfin
max=0
while [ $max -le 27 ];do
ssh $hotkey pi@192.168.5.1 "sudo bash -c; for (( i=$gini; i<=$gfin; i++ )); do echo \$i; echo \$i >/sys/class/gpio/export;sleep 0.1; echo out >/sys/class/gpio/gpio\$i/direction; echo \$max; let "max++"; done"
break
done
Lo que me sucede con este código es que el for sigue contando después de llegar al valor 27, he añadido una variable "max" para intentar frenar al for, pero ni con esas, cualquier pista me seria de gran ayuda, gracias y un saludo!