Test Foro de elhacker.net SMF 2.1

Programación => Scripting => Topic started by: BALTA00 on 27 September 2016, 20:38 PM

Title: ¿Existe una función similar a goto de batch en bash?
Post by: BALTA00 on 27 September 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?
Title: Re: ¿Existe una función similar a goto de batch en bash?
Post by: warcry. on 27 September 2016, 20:59 PM
por ejemplo

Code (bash) Select
#!bin/bash

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

"
}

respuesta(){
echo -e "genial

"
}

while true
do

pregunta

respuesta

done
Title: Re: ¿Existe una función similar a goto de batch en bash?
Post by: BALTA00 on 27 September 2016, 22:39 PM
Quote from: warcry. on 27 September 2016, 20:59 PM
por ejemplo

Code (bash) Select
#!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?
Title: Re: ¿Existe una función similar a goto de batch en bash?
Post by: warcry. on 27 September 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"