Answers:
您可以SSH到另一台Mac中并screencapture
在Shell中使用。
ssh username@other_computers_ip
sudo screencapture ~/Desktop/screenshot.png
sudo bash; screencapture
在早期版本的10.7中,类似的东西起作用。@bmike将其编辑为sudo screencapture
。(我再也没有要使用的Mac了,有人可以测试它是否也可以工作吗?)
我自己尚未对此进行测试,但是也许此链接会有所帮助。抓取“不可能”屏幕截图
OS X包括一个很好的命令行屏幕捕获实用程序,简称为screencapture。尽管此程序上没有大量文档,但是man screencapture将为您提供基本选项。使用ssh连接到要捕获其屏幕的Mac之后,您需要使用root特权执行screencapture命令。
确保启用了快速用户切换,然后打开抓取,打开定时屏幕,您有10秒钟的时间通过快速用户切换切换到登录窗口-请勿注销!
如果没有第二台主机可以SSH连接到Mac或相机/电话,则可以使用启动守护程序:
创建一个带有以下内容的列表:
sudo nano /Library/LaunchDaemons/local.screenshot.plist
内容:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>local.screenshot</string>
<key>Program</key>
<string>/bin/bash</string>
<key>ProgramArguments</key>
<array>
<string>/bin/bash</string>
<string>-c</string>
<string>/usr/sbin/screencapture -T 1 /Users/user/screen1.png ; /usr/sbin/screencapture -T 16 /Users/user/screen16.png</string>
</array>
<key>RunAtLoad</key>
<true/>
</dict>
</plist>
用以下命令加载守护进程:
sudo launchctl load /Library/LaunchDaemons/local.screenshot.plist
替换用户通过一个真实的用户名在plist中或使用不同的路径比/用户/用户/。根据您的系统,您可能必须修改时间或添加其他屏幕快照才能通过; /usr/sbin/screencapture -T <seconds> /Users/user/screen<seconds>.png
在ProgramArguments数组中添加一个或几个术语来创建整个序列。
除了使用命令使plist混乱之外,您还可以使用for循环创建Shell脚本,以每秒(或两秒)进行屏幕截图,并将其加载到启动守护程序中。
在我的VM中,一秒钟后出现黑屏,而16秒后几乎完成了引导加载栏。