GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Wie funktioniert der Continue-Befehl in einem Bash-Skript mit eingebetteten Schleifen?

Ich schreibe ein Bash-Skript in einer Busybox-Sitzung.

Das Skript muss eine externe ausführbare Datei mehrmals hintereinander in daemonisierter Form initiieren und dann die Ausgabe überwachen.

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

Meine Frage ist, gegen welche der beiden Schleifen der Continue-Befehl ausgeführt wird?

Die anfängliche While-Read-Zeile oder die nachfolgende While-Read-Zeile?

Konzentrieren Sie sich bitte nicht auf den eigentlichen Code, den ich hier als Beispiel zusammengestellt habe, um zu versuchen, diese Frage zu erklären, der eigentliche Code ist viel detaillierter.

Akzeptierte Antwort:

Aus „Hilfe weiter“:

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.

Sie möchten also continue oder continue 1 um zur nächsten Iteration von until zu gehen , oder continue 2 um zur nächsten Iteration von while zu gehen .


Linux
  1. So geben Sie Terminalsitzungen wieder, die mit dem Linux-Skriptbefehl aufgezeichnet wurden

  2. Rm-Befehl im Bash-Skript funktioniert nicht mit Variablen?

  3. Wie funktioniert der Tee-Befehl?

  4. Wie funktioniert das Hinzufügen eines Ppa mit einem Curl-Befehl?

  5. Wie man den Alias-Befehl in einem Bash-Skript oder einer Bashrc-Datei zum Laufen bringt

So schreiben Sie ein Bash-Skript mit Beispielen

So verwenden Sie den Bash-Lesebefehl

Bash-Scripting Teil 2 – For- und While-Schleifen mit Beispielen

So finden Sie Dateien mit Dutzenden von Kriterien mit dem Bash-Suchbefehl

Wie funktioniert die Loopback-Schnittstelle?

Wie funktioniert das <( cmd )-Muster in Bash?