拍摄当前OS X或iTerm终端窗口的屏幕截图

时间:2013-08-14 20:58:00

标签: macos bash environment-variables

在Linux中,我使用imagemagick import -window $WINDOWID来截取终端的屏幕截图。

OS X中是否有类似内容?

2 个答案:

答案 0 :(得分:8)

您希望使用screencapture而不是import,这只适用于X11窗口。

如果窗口在前面,您可以尝试:

screencapture -l$(osascript -e 'tell app "Terminal" to id of window 1') test.png

有关更多背景信息,请参阅this问题。

答案 1 :(得分:3)

尝试tty命令。

$ tty
/dev/ttys001

您可以使用`ps -t:

查看该终端上正在运行的命令
$ ps -t s001  #Where `tty` returns /dev/ttys001

您也可以尝试pgrep

$ pgrep -t s001

编辑(你可以/我可以)

哦,这是用于屏幕捕获......不在OP中。

$WINDOWID是X11,imagemagick也是。 Linux GUI(KDE和Gnome)都基于X11协议。 Mac GUI不是。

在Mac OS X上,有一个screencapture命令。我没有使用它,但让我们看看手册页:

  

迄今为止,screencapture实用程序没有很好地记录。

你是独自一人。

又一招......

您可以在Mac上运行X11服务器。 The server is no longer included in Mountain Lion,但Apple建议您从XQuartz Project安装它。

您可以运行X11服务器,然后使用XTerm窗口,该窗口具有可与imagemagick一起使用的Windows ID。

相关问题