Shell, grep in Datei umleiten

LordMiles

Mitglied
Thread Starter
Dabei seit
28.07.2022
Beiträge
5
Reaktionspunkte
0
Hallo Community,

ich habe ein Problem mit der Shell. Mein Vorhaben: Im Terminal die Ausgabe von sudo log stream in grep umleiten und nach "UI lock status changed" suchen.
Das funktioniert auch.
Wenn ich allerdings versuche die Terminalausgabe in eine Datei um zu leiten (>>test.txt) bleibt diese leer.

Sprich

sudo log stream | grep "UI lock status changed"

funktioniert problemlos und zeigt mir die Timestamps vom Sperren und Entsperren des Macs an, jedoch nur im Terminal.

sudo log stream | grep "UI lock status changed" >> test.txt

funktioniert jedoch nicht und die Datei bleibt leer

Ich bin leicht am verzweifeln, da ich mir das Problem nicht logisch erklären kann.

Evtl. kennt jemand von euch die Lösung, ich wäre dankbar.

Monterey 12.4
MacBook Air M1 2020

Liebe Grüße

Miles
 
in welchem Verzeichnis stehts Du denn? Hast Du da Schreibrechte?
 
ist jetzt vielleicht doof:
Bei mir findet grep diesen String garnicht. Zumindest läuft es jetzt schon einige Minuten. Findet aber auch ohne Ausgabe nix.
 
Der String tauch auf, wenn der mac gesperrt bzw. Entsperrt wird. Bei jedem lock/unlock Vorgang 3mal.
Wie gesagt: ohne > wird der String auch in das Terminal geschrieben.
 
sudo log stream | grep "UI lock status changed" >> test.txt

funktioniert jedoch nicht und die Datei bleibt leer
Sollte schon funktionieren – dauert halt ein paar Minuten bis in der .txt auch etwas drin steht.

Mit log show --last 1d | grep "UserActivity Assertion" >> test-log.txt
… funktioniert es (Big Sur) und dauert bei mir mit heutigen 4 Sleeps gut und gerne ca. 3 bis 5 Minuten bis in der test-log.txt was drin steht.
Angelegt wird die test-log.txt aber sofort, aber zuerst leer.

edit:
  1. Open Terminal
    • If you are not logged in as an admin, then use su username to first authenticate as admin "username". I use this because I'm checking my kid's login history on his Mac without having to log him out and disrupt his stuff.
  2. log show --last 1d | grep "UserActivity Assertion"
    • If you want to see more or less history back in time, change the "1d" to "2h" or "10m" (see documentation by running man log).
    • If you omit the --last modifier, it will take a really long time to run, maybe more than 10 minutes.

This seems to reliably show each time the machine was woken from sleep by the user unlocking the lock screen with their password.

Quelle:
https://apple.stackexchange.com/que...e-last-times-the-screen-was-unlocked-in-macos
 
Zurück
Oben Unten