用于截屏的 Shell 脚本
有时我们需要捕获屏幕以备后用。有多种方法可以执行此任务:一种是使用系统中存在的快捷键来实现,另一种是使用一些命令行工具。在这里,我们将了解那些命令行工具。
在 Ubuntu 中截取屏幕截图的不同方法
在启动命令行工具之前,我们必须了解可以产生不同屏幕输出的各种快捷方式。了解所有这些将帮助您创建所需的输出图像。
- PtrScr: PtrScr 将捕获整个屏幕并将图像文件保存到主目录中的图片文件夹。
- Shift + Ctr + PtrScr:这个快捷键是复制到剪贴板。在这里,您可以选择要复制的区域。
- Shift + Alt + PtrScr:此快捷方式捕获活动窗口并将其复制到剪贴板。
- Shift + PtrScr:此快捷方式将特定区域捕获到剪贴板。
- Alt + PtrScr:此快捷方式将捕获活动窗口并将其保存到图片。
- Ctr + PtrScr:此快捷方式会将整个屏幕复制到剪贴板。
在 Ubuntu 中捕获屏幕截图的工具
这里我们有一些 CLI 工具可以帮助捕获屏幕。它们有不同的变化,例如捕获整个屏幕、捕获活动窗口、决定屏幕截图的大小、选择要捕获的特定区域等。
图像魔术师
ImageMagick 可以读取、写入各种格式的图像,如 PNG、JPEG、GIF、HEIC、TIFF、DPX、EXR、Webp、Postscripts、PDF 和 SVG。
ImageMagick 中存在的各种选项
- 调整大小
- 翻动
- 镜子
- 旋转
- 歪曲
- 剪切
- 绘制文本、线条、多边形、椭圆等。
安装:
# sudo apt install imagemagick –y
外链:
scrot的一些特点:-
- 针对图像质量进行了优化。
- Scrot 支持多图像格式,如 PNG、JPEG、JPG、GIF 等。
- 使用开关捕获特定窗口或矩形区域。
安装:
# sudo apt install scrot
侏儒截图:
Gnome 截图功能:-
- 截屏,
- 或者窗户,
- 或特定区域,
- 并将其保存到文件中。
安装:
# sudo apt install gnome-screenshot
准备一个 Shell 脚本来捕获屏幕截图
此 shell 脚本将获取各种屏幕截图属性,然后根据这些约束生成屏幕截图。我们将使用的一些条件是屏幕截图的名称、屏幕截图的区域等。脚本会要求您使用任何给定的工具并捕获特定区域。
- 按 [ 1 ] 使用 gnome-screenshot 捕获整个屏幕
- 按 [ 2 ] 使用 Scrot 捕获活动窗口
- 按 [ 3 ] 使用 gnome-screenshot 捕获活动窗口
- 按 [ 4 ] 使用 Scrot 捕获特定区域
- 按 [ 5 ] 使用 gnome-screenshot 捕获特定区域
使用 gedit 打开文件
# gedit screenshotApp.sh
#!/bin/bash
#This is a shell script to take Screenshots
echo -e "
[ 1 ] for Capturing the whole Screen using gnome-screenshot \n
[ 2 ] for Capturing the Active window using the Scrot \n
[ 3 ] for Capturing the Active window using the gnome-screenshot \n
[ 4 ] for Capturing the Specific Area using the Scrot \n
[ 5 ] for Capturing the Specific Area using the gnome-screenshot \n"
#Now read the user input
read UserInput
#Now we will use switch cases to implement the UserInput
case $UserInput in
1)
#command for Capturing the whole Screen using gnome-screenshot.
gnome-screenshot
# By default it will capture the whole screen
;;
2)
#command for Capturing the Active windown using the Scrot.
# syntax scrot
赋予可执行权限
# chmod +x screenshotApp.sh
运行并提供 UserInput
# ./screenshotApp.sh
输出截图
再次运行,这次选择不同的选项
#./screenshotApp.sh