Test Foro de elhacker.net SMF 2.1

Programación => Scripting => Mensaje iniciado por: BALTA00 en 27 Septiembre 2016, 20:38 PM

Título: ¿Existe una función similar a goto de batch en bash?
Publicado por: BALTA00 en 27 Septiembre 2016, 20:38 PM
Estoy haciendo un pequeño script, y no sé como crear bucles infinitos en bash, a ver si me daban una ayudada

Sé que en batch sería algo tipo

:saludo
echo "Hola, ¿Cómo estás?"
goto respuesta

:respuesta
echo "Bien, ¿y tú?, ¿Me saludas de nuevo para crear un bucle infinito de saludos?"
goto saludo


¿Cómo lo hago en bash?
Título: Re: ¿Existe una función similar a goto de batch en bash?
Publicado por: warcry. en 27 Septiembre 2016, 20:59 PM
por ejemplo

Código (bash) [Seleccionar]
#!bin/bash

pregunta(){
echo -e "¿que tal?

"
}

respuesta(){
echo -e "genial

"
}

while true
do

pregunta

respuesta

done
Título: Re: ¿Existe una función similar a goto de batch en bash?
Publicado por: BALTA00 en 27 Septiembre 2016, 22:39 PM
Cita de: warcry. en 27 Septiembre 2016, 20:59 PM
por ejemplo

Código (bash) [Seleccionar]
#!bin/bash

pregunta(){
echo -e "¿que tal?

"
}

respuesta(){
echo -e "genial

"
}

while true
do

pregunta

respuesta

done


Muchas gracias, era exactamente lo que quería saber...

Con este código lo que esté entre do y done se ejecutará de manera infinita?

si yo colocase:

do

pregunta

pregunta

respuesta

respuesta
done


de manera infinita me diría
¿que tal?
¿que tal?
genial
genial


¿Cierto?
Título: Re: ¿Existe una función similar a goto de batch en bash?
Publicado por: warcry. en 27 Septiembre 2016, 23:04 PM
Correcto

Tu primero defines las funciones que necesites

En mi caso defino dos funciones

Una que se llama pregunta y otra que se llama respuesta.

Luego creo el bucle infinito

"mientras sea cierto"
"ejecuta"
Aquí es donde se llama a la función o funciones por el nombre sin el ()
"hecho"