Wenn Sie am Ende der screencapture-Manpage nachsehen, wird Folgendes angezeigt:
Um Bildschirminhalte zu erfassen, während Sie über ssh angemeldet sind, müssen Sie starten screencapture in derselben mach-Bootstrap-Hierarchie wie loginwindow: PID = PID des Anmeldefensters sudo launchctl bsexec $ PID screencapture [Optionen]
Ich denke, Sie könnten so etwas in Ihrem Shellskript machen, das von cron aufgerufen wird:
# / bin / sh loginwindowpid = `ps axo pid, comm | grep '[l] oginwindow' | sed -n 's # * \ ([^] * \). * $ # \ 1 # p'` sudo launchctl bsexec $ loginwindowpid screencapture /somedir/screen.png
Natürlich benötigen Sie Ihre Benutzer-ID, um kein Kennwort für sudo zu benötigen.
Das heißt, Sie hätten mit dem Befehl visudo in / etc / sudoers festgelegt
youruserid ALL = (ALL) NOPASSWD: ALL