Planen Sie einen Mac nur einmal in den Energiesparmodus


18

Ist es möglich, einen Mac nur einmal in den Ruhezustand zu versetzen? Ich weiß, dass ich einen Zeitplan dafür festlegen kann, aber ich möchte die Kontrolle darüber haben.

Ich gehe also gelegentlich ins Bett, lasse aber eine Datei übertragen und möchte, dass der Mac in etwa einer Stunde in den Ruhezustand wechselt. Wie würde ich das tun, ohne einen langfristigen Zeitplan aufzustellen?


2
Wenn Sie im Terminal herunterladen, können Sie beide Befehle wie sudo sh -c 'wget http://download.com/file.zip; pmset sleepnow'folgt kombinieren: Der Befehl sleep wird nur dann ausgeführt, wenn wget beendet wird.
Overbryd

Antworten:


28

Der pmsetTerminalbefehl sollte tun, was Sie wollen. Mit dem folgenden Befehl wird der Computer am 2. Dezember 2014 um 23:45:00 Uhr in den Energiesparmodus versetzt. Der Befehl muss jedoch über ein Administratorkonto ausgeführt werden:

sudo pmset schedule sleep "12/02/14 23:45:00"

Das MM / TT / JJ-Datumsformat kann nicht geändert werden. Wenn Sie an ein anderes Format gewöhnt sind, gehen Sie vorsichtig vor.

Wenn Sie dies regelmäßig tun, können Sie eine Funktion schreiben und sie speichern in ~/.profile:

# Schedule sleep in X minutes, use like: sleep-in 60
function sleep-in() {
  local minutes=$1
  local datetime=`date -v+${minutes}M +"%m/%d/%y %H:%M:%S"`
  sudo pmset schedule sleep "$datetime"
}

2
Beim Aufrufen der Funktion ist ein Fehler aufgetreten sleep-in:local:2: not an identifier: 23:35:31. Es stellt sich heraus (zumindest bei meiner Installation (zsh)), dass Sie diesen Datums-Backtick-Ausdruck in doppelte Anführungszeichen setzen müssen. Also:local datetime="`date -v+${minutes}M +"%m/%d/%y %H:%M:%S"`"
Matt Dodge

Begleitfunktion zum Aufheben des Ruhezustands (ersetzen Sie "\ n" durch aktuelle neue Zeilen): function sleep-cancel-all() {\n NUM_OF_SLEEPS=$(pmset -g sched | wc -l)\n if [[ $NUM_OF_SLEEPS -gt 0 ]]; then\n # The first line of output is a header, ignore it.\n NUM_OF_SLEEPS=$(expr $NUM_OF_SLEEPS - 1)\n seq $NUM_OF_SLEEPS | xargs -Iz sudo pmset schedule cancel 0\n fi\n }\ n
KFunk

7

Standardmäßig ist dies mit den Optionen in den Systemeinstellungen nicht möglich.

Bildbeschreibung hier eingeben

Sie können dies jedoch über die Befehlszeile mit einem einfachen Befehl tun:

sleep 10; osascript -e 'tell application "System Events" to sleep'
  • sleep 10Unterbrechen Sie die Ausführung des folgenden Befehls für 10 Sekunden. Wenn Sie Minuten oder Stunden möchten, müssen Sie 10 mit der Anzahl der Sekunden ändern, die Sie möchten.
  • osascript -e 'tell application "System Events" to sleep' Schalten Sie den Computer ein.

1
Mit GNU coreutils, sleepakzeptiert Argumente wie 10s, 5m, 3hfür Sekunden, Minuten und Stunden auf.
AT

1

Alle oben genannten Antworten funktionieren, aber wenn Sie dies regelmäßig tun möchten, empfehle ich die Power Manager - Software, mit der Sie ganz einfach benutzerdefinierte Ruhezeiten für einmalige und wiederkehrende Ereignisse festlegen können (weitaus einfacher als mit Terminalbefehlen) meine Meinung). Die Software ist relativ teuer (50 US-Dollar), es gibt jedoch eine kostenlose 30-Tage-Testversion mit allen Funktionen. Sie können Power Manager auch von Ihrem iPhone aus steuern. Dies ist hilfreich, wenn Sie nicht an Ihrem Computer arbeiten, ihn aber in den Energiesparmodus versetzen oder herunterfahren möchten.


1

Für die Stromsteuerung Ihres Mac von Ihrem iPhone in einem lokalen Netzwerk habe ich Off Remote verwendet, das auch innerhalb der nächsten 24 Stunden eine Systemaktion (Herunterfahren, Sperren, Neustarten, Abmelden, Ruhezustand) einplanen kann und unter iOS nur 3 US-Dollar kostet Sie müssen jedoch eine zusätzliche Hilfsprogramm-App auf Ihrem Mac installieren, um die Anweisungen von der iPhone-App zu erhalten.

In einer anderen Antwort wurde die Verwendung der Power Manager- Software vorgeschlagen, die 50 US-Dollar kostet. Ich würde jedoch die Tastatur-Maestro- Software für 36 US-Dollar vorschlagen, die etwas weniger intuitiv ist als Power Manager, aber eine größere Flexibilität bietet als die Energieverwaltung. Auf der Suche nach der Möglichkeit, meinen Mac in den Ruhezustand zu versetzen, fiel mir ein, dass ich über dieses Dienstprogramm verfüge und die Makrokomponenten schnell in KM ziehen und ablegen konnte, um ein Skript zu erstellen, das für einen festgelegten Zeitraum angehalten wurde und dann meinen Mac in den Ruhezustand versetzte Schlaf:

Tastatur-Maestro-Skript, um den Mac nach 2 Stunden in den Ruhezustand zu versetzen

… Es gibt auch eine Aktion in Keyboard Maestro, mit der Makros (um den Mac in den Energiesparmodus zu versetzen, herunterzufahren, neu zu starten usw.) zu festgelegten Zeiten ausgelöst werden:

Tastatur-Maestro-Trigger für Makro basierend auf Uhrzeit und Wochentag (en)

Keyboard Maestro ist billiger und robuster für die Entwicklung von Makros, mit denen Sie Ihren Mac besser nutzen können. Es gibt jedoch eine etwas längere Einarbeitungszeit als die Power Manager-Anwendung.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.