如何在Linux上使用Scrot截图

最近,我们讨论了gnome-screenshot实用程序,这是一个很好的屏幕抓取工具。 但是,如果您正在寻找一个更好的命令行实用程序来进行截图,那么您必须尝试给予Scrot。 此工具有一些额外的功能,目前在gnome屏幕截图中不可用。 在本教程中,我们将使用易于理解的示例来解释Scrot。

Please note that all the examples mentioned in this tutorial have been tested on Ubuntu 16.04 LTS, and the scrot version we have used is 0.8.

关于Scrot

ScrotSCR eensh OT )是使用imlib2库获取和保存图像的截图捕获实用程序。 由Tom Gilbert开发,我用C编程语言编写,并获得BSD许可证许可。

扫管安装

您的Ubuntu系统上可能会预安装scrot工具,但如果不是这样,那么您可以使用以下命令进行安装:

sudo apt-get install scrot

安装该工具后,您可以使用以下命令启动该工具:

scrot [options] [filename]

注意 :[]中的参数是可选的。

Scrot使用/功能

在本节中,我们将讨论如何使用Scrot工具及其提供的所有功能。

当没有任何命令行选项运行该工具时,它捕获整个屏幕。

默认情况下,捕获的文件将以当前目录中的日期戳文件名保存,但是在运行命令时也可以显式指定捕获的映像的名称。 例如:

scrot [image-name].png

获取应用程序版本

如果需要,可以使用-v命令行选项检查scrot的版本。

scrot -v

这是一个例子:

捕捉当前窗口

使用该实用程序,您可以将屏幕截图限制为当前关注的窗口。 可以使用-u命令行选项访问此功能。

scrot -u

例如,当我在命令行上执行上述命令时,这是我的桌面:

这里是由scrot捕获的截图:

选择一个窗口

该实用程序允许您通过使用鼠标点击它捕获任何窗口。 可以使用-s选项访问此功能。

scrot -s

例如,如下面的截图所示,我有一个屏幕,两个终端窗口相互重叠。 在顶层窗口中,我运行上述命令。

现在假设,我想捕获底部的终端窗口。 为此,一旦执行命令,我将只需点击该窗口,直到您单击屏幕上某处的命令执行将不会完成。

以下是点击该终端后捕获的截图:

注意 :正如您在上述快照中可以看到的,底部窗口覆盖的任何区域都已被捕获,即使它包含顶部窗口的重叠部分。

在屏幕截图中包含窗口边框

前面讨论过的-u命令行选项不包括屏幕截图中的窗口边框。 但是,如果需要,您可以包括窗口的边框。 可以使用-b选项(当然与-u选项一起使用)来访问此功能。

scrot -ub

以下是一个示例屏幕截图:

注意 :包括窗口边框还会在屏幕截图中添加一些背景区域。

延迟拍摄截图

您可以在拍摄截图时引入时间延迟。 为此,您必须为--delay-d命令行选项分配一个数值。

scrot --delay [NUM]
scrot --delay 5

这是一个例子:

在这种情况下,scrot会等待5秒钟,然后取屏幕截图。

截图前倒数

该工具还允许您在使用延迟选项时显示倒计时。 可以使用-c命令行选项访问此功能。

scrot –delay [NUM] -c
scrot -d 5 -c

以下是一个示例屏幕截图:

画面质量

使用该工具,您可以以1-100的比例调整截图图像的质量。 高值意味着高尺寸和低压缩。 默认值为75,但效果因所选择的文件格式而异。

可以使用--quality-q选项访问此功能,但必须为此选项分配一个数字值,范围为1-100。

scrot –quality [NUM]
scrot –quality 10

以下是一个示例快照:

因此,您可以看到图像的质量下降很多,因为-q选项的分配值接近1。

生成缩略图

scrot工具还允许您生成截图的缩略图。 可以使用--thumb选项访问此功能。 此选项需要NUM值,这基本上是原始屏幕截图大小的百分比。

scrot --thumb NUM
scrot --thumb 50

注意 :-- thumb选项确保屏幕截图被捕获并保存为原始大小。

例如,以下是我的案例中捕获的原始屏幕截图:

以下是保存的缩略图:

加入多个显示镜头

如果您的机器具有多个显示器,scrot可让您抓取并加入这些显示屏的截图。 可以使用-m命令行选项访问此功能。

scrot -m

以下是一个示例快照:

对保存的图像执行操作

使用该工具,我们可以对保存的图像执行各种操作 - 例如,打开图像编辑器(如gThumb)中的屏幕截图。 可以使用-e命令行选项访问此功能。 以下是一个例子:

scrot abc.png -e ‘gthumb abc.png’

在这里,gthumb是一个图像编辑器,它将在我们运行命令后自动启动。

以下是命令的快照:

这是以上命令的输出:

所以你可以看到,scrot命令抓住了截图,然后以捕获的图像作为参数启动了gThumb图像编辑器。

如果您没有为屏幕截图指定文件名,那么快照将以当前目录中的日期戳文件名保存,这一点我们在开头已经提到,是scrot的默认行为。

这是一个-e命令行选项示例,其中scrot使用屏幕截图的默认名称:

scrot -e ‘gthumb $n’

值得一提的是, $ n是一个特殊的字符串,它提供对屏幕截图名称的访问。 有关特殊字符串的更多细节,请转到下一节。

特殊字符串

与scrot一起使用时, -e (或--exec )和filename参数可以使用格式说明符。 格式说明符有两种类型。 第一个类型是前缀为'%'的字符,用于日期和时间格式,而第二个类型是scrot内部,前缀为'$'

下面讨论由--execfilename参数识别的几个说明符。

$ f - 提供对截图路径(包括文件名)的访问。

例如,

scrot ashu.jpg -e ‘mv $f ~/Pictures/Scrot/ashish/’

以下是一个示例快照:

如果您不指定文件名,则scrot将按默认值以快照形式保存日期文件格式。 这是scrot中使用的默认日期戳文件格式: %yy-%mm-%dd-%hhmmss_ $ wx $ h_scrot.png

$ n - 提供快照名称。 以下是一个示例快照:

$ s - 可以访问截图的大小。 例如,可以通过以下方式访问此功能。

scrot abc.jpg -e ‘echo $s’

这是一个示例快照

类似地,您可以使用提供图像像素大小,图像宽度,图像高度,图像格式,$符号等访问权限的其他特殊字符串$ p$ w$ h$ t$$\ n新线分别。 例如,您可以像我们上面讨论的$ s示例一样使用这些字符串。

结论

该实用程序易于安装在Ubuntu系统上,这对初学者是有好处的。 Scrot还提供了一些高级功能,例如可以在专业人员的脚本中使用的特殊字符串。 不用说,如果你想使用它们,有一个轻微的学习曲线。

赞(52) 打赏
未经允许不得转载:优客志 » 系统运维
分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏