Cómo usar hasta que bucle en sus scripts de shell
- 4353
- 993
- Berta Solano
En Bash para, mientras, y hasta son tres construcciones de bucle. Mientras que cada bucle difiere sintácticamente y funcionalmente, su propósito es iterar sobre un bloque de código cuando se evalúa una determinada expresión.
Hasta El bucle se usa para ejecutar un bloque de código hasta que la expresión se evalúa como falsa. Esto es exactamente lo opuesto a un bucle de tiempo. Mientras que Loop ejecuta el bloque de código mientras la expresión es verdadera y hasta Loop hace lo contrario.
Hasta que [expresión] haga bloque de código ... hecho
Desglosemos la sintaxis.
- Para iniciar el bucle, debe usar hasta la palabra clave seguida de una expresión dentro de aparatos ortopédicos simples o dobles.
- La expresión debe evaluarse como falsa hasta que comience a ejecutar el bloque de código.
- El bloque real de código se coloca entre Do y Hecho.
En este breve artículo, aprenderá cómo usar hasta que el bucle en sus scripts de shell utilizando los siguientes ejemplos.
Crear un bucle infinito en scripts
Puede crear un bucle infinito usando un FALSO Declaración como expresión. Cuando intentes simular bucles infinitos, intente usar dormir que pasará el guión periódicamente.
count = 0 hasta que falso do echo "contador = $ count" ((count ++)) Sleep 2 HechoCrear bucle infinito en Linux
Crear declaraciones de línea única
Puede crear declaraciones de bucle de una sola línea. Eche un vistazo al siguiente código. Esto es lo mismo que nuestro primer ejemplo de bucle infinito pero en una sola línea. Aquí tienes que usar un punto y coma (;)
Para terminar cada declaración.
# hasta que false; hacer echo "contador = $ count"; ((contar ++)); dormir 2; hechoDeclaración de una sola línea
Alterar el flujo con la declaración Break and Continir
Puede usar un descanso y continuar las declaraciones dentro mientras bucle. El romper La declaración saldrá fuera del bucle y pasará el control a la siguiente declaración, mientras que la instrucción Continuar se omitirá la iteración actual e iniciará la siguiente iteración en el bucle.
Estoy usando el mismo ejemplo de bucle infinito. Aquí cuando el recuento es igual a cinco continuar La declaración saltará a la próxima iteración omitiendo el resto del cuerpo del bucle. Del mismo modo, el bucle brote Cuando el recuento es igual o mayor que 10.
count = 0 hasta falso do ((count ++)) if [[$ count -eq 5]] Entonces continúe elif [[$ count -ge 10]] y luego rompa fi -eco "contador = $ count" hecho "hechoRomper y continuar la declaración
Eso es todo para este artículo. Te atraparemos con otro artículo interesante pronto 'hasta'Entonces sigue leyendo y sigue apoyándonos.
- « Cómo usar declaraciones de descanso y continuar en scripts de shell
- Configurar un servidor DNS de almacenamiento en caché recursivo básico y configurar zonas para el dominio »