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

Shell Sleep bis zur nächsten vollen Minute?

Um ein Skript in der nächsten vollen Minute auszuführen, möchte ich sleep mitteilen Befehl, bis zur nächsten vollen Minute zu schlafen. Wie kann ich das tun?

Akzeptierte Antwort:

Fragen Sie nach dem Datum in Sekunden:date +%s und berechne den Rest der Teilung mit 60 (modulo:% ). Wenn Sie 60 minus Modulo berechnen, erhalten Sie die verbleibenden Sekunden zur nächsten vollen Minute. Sie können dies ändern, um bis zur nächsten vollen Stunde zu warten (ändern Sie 60 auf 3600).

sleep $((60 - $(date +%s) % 60)) &&
<yourscript>

Um nur bis zur nächsten vollen Minute zu schlafen, können Sie es sogar kürzer machen (ohne Modulo):

sleep $((60 - $(date +%S) )) &&
<yourscript>

Beachten Sie auch diese Frage und Antwort:Schlafen Sie bis zum nächsten Auftreten einer bestimmten Zeit.


Linux
  1. Zeitüberschreitung in einem Shell-Skript?

  2. Auf welcher Shell laufe ich?

  3. Assoziative Arrays in Shell-Skripten?

  4. Richtiges Sperren in Shell-Skripten?

  5. Arrays in der Unix-Bourne-Shell?

Was ist die Shell unter Linux?

Was ist die Login-Shell in Linux?

Shell-Scripting Schritt-für-Schritt-Tutorial

Arrays in Shell-Skripten

8 Arten von Linux-Shells

Was ist eine .sh-Datei?