GNU/Linux >> Tutoriales Linux >  >> Linux

En un script Bash, ¿cómo funciona el comando Continuar con bucles incrustados?

Estoy escribiendo un script de bash en una sesión de busybox.

El script tiene que iniciar un ejecutable externo varias veces seguidas en forma demoníaca y luego monitorear la salida.

while read LINE; do
  VARIABLEPARAMETER=`echo "$LINE" | sed -e 's/appropriateregex(s)//'`
  externalprog --daemonize -acton $VARIABLEPARAMETER -o /tmp/outputfile.txt
  until [ "TRIGGERED" = "1" ]; do
    WATCHOUTPUT=`tail -n30 /tmp/outputfile.txt`
    TRIGGERED=`echo "$WATCHOUTPUT" | grep "keyword(s)"` 
    if [ -z "$TRIGGERED" ]; then
      PROGID=`pgrep externalprog`
      kill -2 "$PROGID"
      continue
    fi
  done
done < /tmp/sourcedata.txt

Mi pregunta es ¿contra cuál de los dos bucles se ejecutará el comando continuar?

¿La primera línea mientras se lee, o la siguiente, hasta que se activa?

Por favor, no se concentre en el código real. He incluido esto como ejemplo para tratar de explicar esta pregunta, el código real es mucho más detallado.

Respuesta aceptada:

De "ayudar a continuar":

continue: continue [n]
    Resume for, while, or until loops.

    Resumes the next iteration of the enclosing FOR, WHILE or UNTIL loop.
    If N is specified, resumes the Nth enclosing loop.

    Exit Status:
    The exit status is 0 unless N is not greater than or equal to 1.

Entonces quieres continue o continue 1 para ir a la siguiente iteración de until , o continue 2 para ir a la siguiente iteración de while .


Linux
  1. Cómo hacer que el comando de alias funcione en script bash o archivo bashrc

  2. ¿Cómo funciona el comando 'ls' en Linux/Unix?

  3. '&&' vs. '&' con el comando 'test' en Bash

  4. ¿Cómo funciona la interfaz de bucle invertido?

  5. ¿Cómo funciona el patrón <( cmd ) en bash?

Cómo escribir un script Bash con ejemplos

Cómo usar el comando de lectura Bash

Compruebe cuánto tarda en ejecutarse un script de Bash con el comando de tiempo

Bash Scripting Part2 – Bucles for y while con ejemplos

Cómo encontrar archivos con docenas de criterios con el comando Bash Find

¿Cómo funciona el comando ps?