Mac Screenshot Crontab hat nur Desktop

Mac Screenshot Crontab hat nur Desktop

Ich habe einen kleinen Crontab-Code, der alle 15 Minuten einen Screenshot meines Macs macht, als Tagebuch, das mir bei allen Verwaltungsarbeiten hilft. Das hat jetzt ein paar Jahre lang gut funktioniert, aber seit kurzem werden nur noch der Desktop und die Statusleiste oben angezeigt, ohne Anwendungen auf dem Bildschirm, ohne App-Docks unten, nicht einmal App-Symbole oder Dateien auf meinem Desktop.

Der Code funktioniert einwandfrei, wenn ich ihn manuell im Terminal ausführe, aber in Crontab gibt es Probleme.

Ich habe versucht, die Crontab neu zu installieren, aber das hat das Problem nicht behoben. Und jetzt habe ich keine Tricks mehr, um das Problem zu beheben.

Wie kann ich Crontab mit Screencapture verwenden, um die Anwendungen auch auf dem Bildschirm anzuzeigen?

Ich verwende einen Mac Catalina Version 10.15.1.

*/15 * * * * /usr/sbin/screencapture -Cxd -tjpg ~/Documents/AutoScreenShot/screen-date +"\%Y\%m\%d-\%H\%M".jpg

Antwort1

Ich hatte gestern Nachmittag das gleiche Problem und nach stundenlangem Probieren habe ich es geschafft. Das Problem ist, dass der Cron keinen Bildschirmzugriff hat.

Hier ist die Lösung

  1. SIP schließen.

Starten Sie den Mac neu und halten Sie cmd+r gedrückt, um in den Wiederherstellungsmodus zu wechseln. Öffnen Sie die Terminaleingabe csrutil disableund starten Sie erneut

  1. TCC Schreibberechtigung erteilen

sudo chmod 664 /Library/Application\ Support/com.apple.TCC

  1. Gewähren Sie Cron und Screencapture die Berechtigung zum Erfassen von Bildschirminhalten.
sudo sqlite3 "/Library/Application Support/com.apple.TCC/TCC.db" 'insert into access values ("kTCCServiceScreenCapture", "/usr/sbin/cron", 1, 1, 1, "", "", "", "UNUSED", "", 0,"")'

sudo sqlite3 "/Library/Application Support/com.apple.TCC/TCC.db" 'insert into access values ("kTCCServiceScreenCapture", "/usr/sbin/screencapture", 1, 1, 1, "", "", "", "UNUSED", "", 0,"")'
  1. SIP erneut aktivieren

Starten Sie den Mac neu und halten Sie cmd+r gedrückt, um in den Wiederherstellungsmodus zu wechseln. Öffnen Sie die Terminaleingabe csrutil enableund starten Sie erneut

verwandte Informationen