Möchte man unter macOS den Sleep Mode für länger dauernde Aufgaben verhindern, ist die Desktop App Caffeine das Mittel der Wahl. Den meisten Benutzern ist jedoch nicht bekannt, dass macOS für die Terminal-Umgebung hier eine Lösung schon mitbringt: Caffeinate.
Caffeinate: Wie man den Sleep Mode für Shell-Skripte unter macOS vorübergehend ausschalten kann
Caffeinate bietet für nahezu jede Situation den passenden Command Line Parameter um den Mac wach zu halten. Die Anwendung von Caffeinate ist simpel: Es wird einfach einem anderen Shell-Befehl vorangestellt, im einfachsten Fall ganz ohne weitere Parameter.
So kann z.B. der Befehl
1 |
caffeinate make |
stundenlang laufen, ohne dass der Mac schlafen geht.
Die Parameter von Caffeinate im Detail
Caffeinate lässt sich mit den folgenden Parametern an fast jede Situation anpassen:
- -d: Verhindert den Sleep Mode für das Display
- -i: Verhindert den Sleep Mode für das komplette System. Wenn Caffeinate wie in unserem o.g. Beispiel ohne Parameter aufgerufen wird, dann greift Parameter “-i”.
- -m: Verhindert den Sleep Mode der Festplatte
- -s: Wie Parameter “-i”. Es wird jedoch vorausgesetzt, dass der Mac an der Steckdose oder einem Netzteil hängt.
- -u: Hier simuliert Caffeinate einen aktiven User für die Dauer von 5 Sekunden. So wird z.B. das Display aufgeweckt. Die Zeitdauer kann mit Parameter “-t” beliebig verlängert werden.
- -t Sekunden: Diese Parameter kann mit allen anderen Parametern kombiniert werden und bestimmt die Dauer, wie lange der betreffende Parameter aktiv ist.
- -w PID: Dieser Parameter lässt Caffeinate warten, bis der Prozess mit dieser ID beendet ist.
Die einzelnen Parameter lassen sich beliebig kombinieren. So verhindert z.B. der folgende Aufruf von Caffeinate den Sleep Mode 2 Stunden lang für das Display und das System:
1 |
caffeinate -di -t 120 |
Viel Spass beim wach bleiben ! :-)