我正在尝试修理一台只能通过 shell 连接的机器。我没有物理访问权限,无法访问 VNC(也许这是另一个问题)。我现在正尝试使用screencapture
over截取屏幕截图以查看发生了什么ssh
,但它没有保存屏幕截图。没有错误消息或任何东西。而且没有详细模式screencapture
,所以我无法轻松诊断它。
当我尝试截取屏幕截图时,发生了以下情况:(
Rogers-iMac:screenshots roger$ screencapture 0911.png
Rogers-iMac:screenshots roger$
返回 shell 并且不输出任何内容)
Rogers-iMac:screenshots roger$ ls -la total 0 drwxr-xr-x 2 roger staff 68 Sep 11 19:56 . drwxr-xr-x+ 32 roger staff 1088 Sep 11 19:56 .. Rogers-iMac:screenshots roger$
编辑:Beroe 建议通过 SSH 连接是一个因素。我编辑了我的问题以反映我通过 SSH 执行此操作的事实。不幸的是,screencapture
即使我按照手册页中的说明操作,仍然会无声无息地失败:
Rogers-iMac:screenshots roger$ ps -axww | grep loginwindo[w] 82 ?? 0:05.10 /System/Library/CoreServices/loginwindow.app/Contents/MacOS/loginwindow console Rogers-iMac:screenshots roger$ sudo launchctl bsexec 82 screencapture 0915.png Rogers-iMac:screenshots roger$ ls -la total 0 drwxr-xr-x 2 roger staff 68 Sep 11 19:56 . drwxr-xr-x+ 32 roger staff 1088 Sep 15 10:17 ..
答案1
您正在通过 ssh 连接到机器并尝试获取屏幕图片吗?
使用 AppleScript,它不会让您生成文件名,但您至少可以将屏幕截图保存到您的Desktop
文件夹中:
osascript -e 'tell application "System Events" to keystroke "#" using command down'
当您远程时,“正确的方法”screencapture
不起作用...文档中有以下警告:
安全注意事项 要在通过 ssh 登录时捕获屏幕内容,您必须
screencapture
在与 loginwindow 相同的 mach 引导层次结构中启动:PID=pid of loginwindow sudo launchctl bsexec $PID screencapture [options]
后来:我试图让它远程工作...您可以通过查看此输出中的第一个数字来获取登录窗口的 PID:
ps -axww | grep loginwindo[w]
然而命令似乎仍然没有被执行......