使用 gnome-screenshot 在 Linux 中截取屏幕截图的综合指南
在此页
- 关于 Gnome-screenshot
- Gnome-screenshot 安装
- Gnome-screenshot 使用/功能
- 捕获当前活动窗口
- 窗口边框
- 为窗口边框添加效果
- 特定区域的屏幕截图
- 在快照中包含鼠标指针
- 延迟截图
- 以交互模式运行该工具
- 直接保存截图
- 复制到剪贴板
- 多个显示器的屏幕截图
- 自动执行屏幕抓取过程
- 获得帮助
市场上有多种屏幕截图工具,但大多数都是基于 GUI 的。如果你花时间在 Linux 命令行上工作,并且正在寻找一个好的、功能丰富的基于命令行的屏幕抓取工具,你可能想试试 gnome-screenshot。在本教程中,我将使用易于理解的示例来解释此实用程序。
Please note that all the examples mentioned in this tutorial have been tested on Ubuntu 16.04 LTS, and the gnome-screenshot version we have used is 3.18.0.
关于 Gnome-screenshot
Gnome-screenshot 是一个 GNOME 工具,顾名思义,它用于捕获整个屏幕、特定应用程序窗口或任何其他用户定义的区域。该工具提供了其他几个功能,包括将美化效果应用于捕获的屏幕截图的边框的能力。
Gnome-screenshot 安装
gnome-screenshot 工具已预安装在 Ubuntu 系统上,但如果出于某种原因您需要安装该实用程序,您可以使用以下命令进行安装:
sudo apt-get install gnome-screenshot
安装该工具后,您可以使用以下命令启动它:gnome-screenshot
Gnome-screenshot 使用/功能
在本节中,我们将讨论如何使用 gnome-screenshot 工具以及它提供的所有功能。
默认情况下,当该工具在没有任何命令行选项的情况下运行时,它会捕获完整的屏幕。
捕获当前活动窗口
如果需要,可以使用 -w 选项将屏幕截图限制为当前活动窗口。
gnome-screenshot -w
窗口边框
默认情况下,该实用程序包括它捕获的窗口的边框,尽管还有一个特定的命令行选项 -b 可以启用此功能(以防您想在某处使用它)。继承人如何使用它:
gnome-screenshot -wb
当然,你需要将-w选项与-b一起使用,这样捕获的区域就是当前活动窗口(否则,-b将没有效果)。
继续前进,更重要的是,如果需要,您还可以删除窗口的边框。这可以使用 -B 命令行选项来完成。以下是如何使用此选项的示例:
gnome-screenshot -wB
这是一个示例快照:
向窗口边框添加效果
借助 gnome-screenshot 工具,您还可以为窗口边框添加各种效果。这可以使用 --border-effect 选项来完成。
您可以添加该实用程序提供的任何效果,例如阴影效果(向窗口添加阴影)、边框效果(在屏幕截图周围添加矩形空间)和复古效果(稍微降低屏幕饱和度、着色并添加矩形周围的空间)。
gnome-screenshot --border-effect=[EFFECT]
例如,要添加阴影效果,运行以下命令
gnome-screenshot –border-effect=shadow
这是阴影效果的示例快照:
请注意,上面的屏幕截图着重于终端的一角,以便您清楚地看到阴影效果。
特定区域的屏幕截图
如果需要,您还可以使用 gnome-screenshot 实用程序捕获计算机屏幕的特定区域。这可以通过使用 -a 命令行选项来完成。
gnome-screenshot -a
运行上述命令时,您的鼠标指针将变为“+”号。在此模式下,您可以通过按住左键单击移动鼠标来抓取屏幕的特定区域。这是一个示例屏幕截图,其中我裁剪了终端窗口的一小部分区域。
在快照中包含鼠标指针
默认情况下,无论何时使用此工具截取屏幕截图,它都不包括鼠标指针。但是,该实用程序允许您包含指针,您可以使用 -p 命令行选项执行此操作。
gnome-screenshot -p
这是一个示例快照
延迟截图
您还可以在截取屏幕截图时引入时间延迟。为此,您必须以秒为单位为 --delay 选项分配一个值。
gnome-screenshot –delay=[SECONDS]
例如:
gnome-screenshot --delay=5
这是一个示例屏幕截图
以交互模式运行该工具
该工具还允许您使用单个选项访问其所有功能,即 -i。使用此命令行选项,用户可以在运行时选择该工具的一项或多项功能。
$ gnome-screenshot -i
这是一个示例屏幕截图
正如您在上面的快照中看到的,-i 选项提供了对许多功能的访问 - 例如抓取整个屏幕、抓取当前窗口、选择要抓取的区域、延迟选项、效果选项 -全部处于交互模式。
直接保存截图
如果你愿意,你可以直接将你的屏幕截图从终端保存到你当前的工作目录,这意味着在该工具运行后你不会被要求为捕获的屏幕截图输入文件名。可以使用 --file 命令行选项访问此功能,显然,这需要将文件名传递给它。
gnome-screenshot –file=[FILENAME]
例如:
gnome-screenshot --file=ashish
这是一个示例快照:
复制到剪贴板
gnome-screenshot 工具还允许您将屏幕截图复制到剪贴板。这可以使用 -c 命令行选项来完成。
gnome-screenshot -c
在此模式下,您可以将复制的屏幕截图直接粘贴到您的任何图像编辑器(例如 GIMP)中。
多显示器情况下的截图
如果有多个显示器连接到您的系统并且您想要拍摄特定显示器的快照,那么您可以使用 --display 命令行选项。此选项需要一个值,该值应该是显示设备 ID(被抓取的屏幕的 ID)。
gnome-screenshot --display=[DISPLAY]
例如:
gnome-screenshot --display=VGA-0
在上面的示例中,VGA-0 是我尝试捕获的显示器的 ID。要查找要截屏的显示 ID,可以使用以下命令:
xrandr --query
为了给你一个想法,这个命令在我的例子中产生了以下输出:
$ xrandr --query
Screen 0: minimum 320 x 200, current 1366 x 768, maximum 8192 x 8192
VGA-0 connected primary 1366x768+0+0 (normal left inverted right x axis y axis) 344mm x 194mm
1366x768 59.8*+
1024x768 75.1 75.0 60.0
832x624 74.6
800x600 75.0 60.3 56.2
640x480 75.0 60.0
720x400 70.1
HDMI-0 disconnected (normal left inverted right x axis y axis)自动化屏幕抓取过程
正如我们之前讨论的那样,-a 命令行选项可以帮助我们抓取屏幕的特定区域。但是,我们必须使用鼠标手动选择区域。如果需要,您可以使用 gnome-screenshot 自动执行此过程,但在这种情况下,您将不得不使用名为 xdotool 的外部工具,它能够模拟按键甚至鼠标事件。
例如:
(gnome-screenshot -a &); sleep 0.1 && xdotool mousemove 100 100 mousedown 1 mousemove 400 400 mouseup 1
mousemove 子命令自动将鼠标指针定位在屏幕上指定的坐标 X 和 Y(上例中的 100 和 100)。 mousedown 子命令触发一个事件,该事件执行与单击相同的操作(因为我们想要左键单击,所以我们使用参数 1),而 mouseup 子命令触发一个执行用户释放鼠标按钮任务的事件。所以总而言之,上面显示的 xdotool 命令执行与您必须手动使用鼠标执行的相同的区域抓取工作 - 具体来说,它将鼠标指针定位到屏幕上的 100、100 坐标,选择封闭的区域,直到指针在屏幕上达到 400,400 个坐标。然后 gnome-screenshot 会捕获所选区域。
这是上面命令的屏幕截图:
这是输出:
有关 xdotool 的更多信息,请访问此处。获得帮助
如果您有疑问或遇到与任何命令行选项相关的问题,则可以使用--help、-? 或 -h 获取相关信息的选项。
gnome-screenshot -h
有关 gnome-screenshot 的更多信息,您可以查看命令的手册页或手册页。
man gnome-screenshot
结论
我建议您至少使用一次此实用程序,因为它不仅对初学者易于使用,而且还为高级使用提供了功能丰富的体验。来吧,试一试。