当前位置: 首页 > news >正文

CentOS 如何使用截图工具截取命令行操作的图片?

一、图形界面截图工具(推荐)

1. GNOME 自带截图工具

适用场景:本地图形界面(GNOME 桌面)
操作步骤

# 截取当前终端窗口(含边框)
gnome-screenshot -w -f ~/terminal.png# 截取当前终端窗口(去除边框)
gnome-screenshot -w -B -f ~/terminal-borderless.png# 延迟5秒截图(用于准备操作)
gnome-screenshot -d 5 -w -f ~/terminal-delay.png

参数说明

  • -w:捕获当前活动窗口
  • -B:移除窗口边框
  • -d:设置延迟时间(秒)
  • -f:指定输出路径
2. Shutter(专业截图工具)

安装方法

# 添加软件源
sudo dnf copr enable kwizart/shutter -y# 安装Shutter
sudo dnf install shutter -y

核心功能

  • 滚动截图:通过Ctrl+Alt+A快捷键启动,选择区域后点击滚动按钮自动捕获长页面22
  • 编辑功能:支持添加标注、马赛克、水印等,截图后可直接在软件内编辑7
  • 命令行调用
    # 截取指定区域
    shutter -s -o ~/region.png# 截取整个屏幕
    shutter -d 5 -o ~/fullscreen.png
    

二、纯命令行截图工具

1. scrot(轻量级工具)

安装方法

sudo dnf install scrot -y

常用命令

# 截取当前终端窗口
scrot -u -d 2 ~/terminal.png# 截取滚动内容(需手动滚动并多次截图)
scrot -u -d 2 ~/part1.png
sleep 2; scrot -u -d 2 ~/part2.png

进阶技巧

  • 拼接多张截图
    montage part1.png part2.png -tile 1x2 -geometry +0+0 merged.png
    

    (需先安装 ImageMagick:sudo dnf install ImageMagick -y
2. fbgrab(无图形界面截图)

适用场景:服务器环境(无 X Window)
安装方法

sudo dnf install fbgrab -y

操作示例

# 截取整个屏幕
fbgrab -o ~/fbgrab.png# 截取指定区域(需先查询坐标)
xwininfo -root
fbgrab -x 100 -y 200 -w 800 -h 600 -o ~/region.png

三、远程环境截图方案

1. 终端模拟器内置功能

Terminator(分屏终端)

# 安装Terminator
sudo dnf install terminator -y# 快捷键操作:
Ctrl+Shift+c 复制选中区域
Ctrl+Shift+v 粘贴到本地剪贴板

FinalShell(远程管理工具)

  1. 登录服务器后,右键点击终端窗口
  2. 选择「截图」→「截取屏幕」
  3. 支持区域截图、窗口截图及滚动截图9
2. byzanz(动态操作录制)

安装方法

sudo dnf install byzanz -y

录制命令

# 录制10秒动态操作(含鼠标)
byzanz-record -d 10 -c ~/operation.gif# 自定义区域录制
byzanz-record -x 500 -y 300 -w 800 -h 600 -d 15 ~/region.gif

四、性能优化与细节调整

1. 终端字体优化

调整字体大小

# GNOME终端
gsettings set org.gnome.Terminal.Legacy.Profile:/:b1dcc9dd-5262-4d8d-a863-c897e6d979b9/ font 'Monospace 14'# 查看当前字体设置
gsettings get org.gnome.Terminal.Legacy.Profile:/:b1dcc9dd-5262-4d8d-a863-c897e6d979b9/ font

颜色主题推荐

  • Solarized Dark:通过gnome-tweak-tool安装主题包
  • Dracula:使用gsettings导入配置:

    bash

    gsettings set org.gnome.Terminal.Legacy.Profile:/:b1dcc9dd-5262-4d8d-a863-c897e6d979b9/ background-color '#282a36'
    gsettings set org.gnome.Terminal.Legacy.Profile:/:b1dcc9dd-5262-4d8d-a863-c897e6d979b9/ foreground-color '#f8f8f2'
    
2. 截图质量优化

启用压缩

# scrot 压缩输出
scrot -z -u ~/terminal.png# gnome-screenshot 调整质量
gnome-screenshot -w -f ~/terminal.png -q 90

分辨率适配

# 调整截图分辨率(ImageMagick)
convert ~/terminal.png -resize 1920x1080 ~/terminal-hd.png

五、特殊场景解决方案

1. 无图形界面服务器

方案 1:script 命令记录会话

# 开始录制
script -a ~/session.log# 结束录制
exit

方案 2:asciinema 录制动态终端

# 安装asciinema
sudo dnf install asciinema -y# 开始录制
asciinema rec ~/session.cast# 生成GIF
asciinema play ~/session.cast --loop --speed=2 -o ~/session.gif
2. 跨平台同步截图

方案 1:SSH 隧道转发

# 本地执行(需安装XQuartz)
ssh -X root@server_ip "gnome-screenshot -w -f /tmp/remote.png"
scp root@server_ip:/tmp/remote.png ~/

方案 2:MobaXterm(Windows 客户端)

  1. 登录服务器后,右键点击终端窗口
  2. 选择「Capture screenshot」
  3. 支持直接保存到本地或复制到剪贴板9

六、常见问题处理

问题现象解决方案
截图模糊1. 增大终端字体(建议 14 号以上)
2. 启用抗锯齿(gsettings set org.gnome.Terminal.Legacy.Profile:/:b1dcc9dd-5262-4d8d-a863-c897e6d979b9/ use-system-font false
滚动截图不完整1. 使用 Shutter 的自动滚动功能
2. 分屏录制(byzanz-record
远程截图黑屏1. 检查防火墙是否放行 X11 端口
2. 尝试export DISPLAY=:0后再截图

通过以上方案,您可以在 Rocky Linux 系统中灵活实现命令行操作的截图需求。对于复杂场景(如服务器无图形界面),推荐优先使用scrotfbgrab;对于需要编辑功能的场景,Shutter 是更优选择。实际操作中可根据具体需求组合使用工具,例如通过byzanz录制动态操作并结合ImageMagick进行后期处理。

相关文章:

  • 计算机网络 | 应用层(1)--应用层协议原理
  • 数据结构和算法(八)--2-3查找树
  • 【学习笔记】Stata
  • hot100—5.盛水最多的容器
  • 一些常见的资源池管理、分布式管理和负载均衡的监控工具
  • 物联网安全运营概览
  • Spring Boot 应用运行指南
  • C++武功秘籍 | 入门知识点
  • day7 python针对心脏病数据集预处理
  • 可靠传输的守护者:揭开计算机网络传输层的奥秘
  • 2024江西ICPC部分题解
  • 多线程(1)——认识线程
  • 摩尔投票法详细介绍
  • 【C】初阶数据结构12 -- 冒泡排序
  • QT跨平台软件开发要点
  • 微信小程序鲜花销售系统设计与实现
  • ASP.NET MVC​ 入门指南三
  • QNX系统动态配置动态库.so文件日志打印级别的方法
  • 7.13 GitHub Sentinel全链路测试实战:自动化框架+零误差传输,QPS提升6倍!
  • 进行物联网安全PoC时的注意事项
  • 游客曝九寨沟打网约车被出租车围堵,官方:前者违规,后者做法不对
  • 杭州银行一季度净赚超60亿增逾17%,增速较去年同期有所回落
  • 新剧|反谍大剧《绝密较量》央一开播,张鲁一高圆圆主演
  • 人社部:就业政策储备充足,将会根据形势变化及时推出
  • 银川市长信箱被指“已读乱回”,官方通报:对相关责任人问责处理
  • 从 “沪惠保” 到 “沪骑保”看普惠保险的 “上海样式”