在Linux系统中,如何通过多种方法完成截屏?工具、命令和快捷键有哪些?

Linux系统提供了多种截屏方式,涵盖命令行工具和图形界面操作,可满足不同场景需求,无论是快速截取全屏、选定区域,还是延时截屏、编辑标注,用户都能通过合适的工具高效完成。

linux 如何截屏

命令行截屏工具:灵活高效,适合自动化

命令行工具通过参数控制截屏行为,适合脚本编写或远程服务器环境使用,无需图形界面支持,以下是常用工具及用法:

scrot:轻量级通用截屏工具

scrot是Linux社区广泛使用的命令行截屏工具,支持全屏、窗口、区域截屏,并可设置延时、命名规则等。

  • 安装(不同发行版):
    • Debian/Ubuntu:sudo apt install scrot
    • Fedora:sudo dnf install scrot
    • Arch:sudo pacman -S scrot
  • 常用参数
    • scrot:截取全屏并保存为当前时间命名的PNG文件(默认路径)。
    • scrot -s:鼠标拖拽选定区域截屏。
    • scrot -u:截取当前活动窗口(需焦点窗口)。
    • scrot -d 5:延时5秒后截屏,适合准备窗口布局。
    • scrot -e 'mv $f ~/Pictures/':截屏后直接移动到指定目录。

gnome-screenshot:GNOME环境原生工具

若系统使用GNOME桌面(如Ubuntu默认),gnome-screenshot可直接调用,支持窗口截屏、延时保存等功能。

  • 安装:通常已预装,若缺失可通过sudo apt install gnome-screenshot安装。
  • 常用参数
    • gnome-screenshot:截取全屏。
    • gnome-screenshot -w:截取当前窗口。
    • gnome-screenshot -a:鼠标选定区域。
    • gnome-screenshot -d 3:延时3秒截屏。
    • gnome-screenshot -c:截屏并复制到剪贴板(无需保存文件)。

flameshot:功能强大的图形化+命令行工具

flameshot结合了命令行灵活性和图形化编辑,支持标注、打码、上传等功能,适合需要后期处理的场景。

linux 如何截屏

  • 安装
    • Ubuntu:sudo apt install flameshot
    • Arch:sudo pacman -S flameshot
  • 命令行用法
    • flameshot full:截取全屏并打开编辑器。
    • flameshot gui:启动图形化截屏界面(支持区域选择、实时标注)。
    • flameshot screen -p ~/Pictures:截取指定屏幕(多屏环境)并保存到目录。

import(ImageMagick组件):支持复杂参数

ImageMagick的import工具可将屏幕区域保存为图像,支持格式转换、质量调整等。

  • 安装sudo apt install imagemagick
  • 示例
    • import -window root screenshot.png:截取全屏(等同于import screenshot.png)。
    • import -crop 100x100+50+50 screenshot.png:截取屏幕坐标(50,50)起始的100×100区域。

ffmpeg:截取视频帧或屏幕流

ffmpeg不仅能处理视频,还可通过X11grab接口截取屏幕实时画面,适合动态内容记录。

  • 安装sudo apt install ffmpeg
  • 示例
    • ffmpeg -f x11grab -i :0.0 output.mp4:录制全屏视频(默认60fps)。
    • ffmpeg -f x11grab -i :0.0 -vframes 1 screenshot.png:截取当前屏幕为单张图片。

桌面环境自带工具:即开即用,适合普通用户

主流Linux桌面环境均内置图形化截屏工具,通常通过快捷键或菜单调用,操作简单直观。

GNOME(Ubuntu、Fedora Workstation等)

  • 快捷键
    • Print Screen(PrtScn):截取全屏,保存默认目录。
    • Ctrl+Print Screen:截取当前窗口,自动保存。
    • Shift+Print Screen:打开截屏界面,支持区域选择和标注。
  • 工具入口:应用菜单搜索“Screenshot”或设置中自定义快捷键。

KDE Plasma(openSUSE、Kubuntu等)

  • 工具名称KSnapshotSpectacle(新版)。
  • 快捷键
    • Print Screen:全屏截屏,自动保存。
    • Alt+Print Screen:截取当前窗口。
    • Shift+Print Screen:打开Spectacle界面,支持区域、滚动窗口截屏。

XFCE(Xubuntu、Linux Mint Xfce等)

  • 工具名称Xfce4-screenshooter
  • 快捷键:默认Print Screen,弹出截屏工具栏,可选择全屏、窗口、区域,并直接编辑或上传。

高级用法:提升截屏效率

  • 截屏并自动编辑:使用flameshot gui后,可通过画笔、箭头、文字、马赛克等功能标注图片,适合教程制作。
  • 截屏到剪贴板:通过gnome-screenshot -cxclip(安装sudo apt install xclip)将图片直接复制到剪贴板,粘贴到聊天工具或文档中。
  • 定时截屏:结合atcron命令,例如echo "scrot ~/screenshot_$(date +%F_%H%M).png" | at 10:00,实现定时自动截屏。

常用命令行截屏工具对比

工具名称 所属包/安装命令 适用场景 常用参数示例 备注
scrot scrot(apt/dnf/pacman) 通用命令行截屏 scrot -s(选定区域)、-d 5(延时) 轻量,依赖少
gnome-screenshot gnome-screenshot(GNOME自带) GNOME环境截屏 -w(窗口)、-c(复制剪贴板) 与GNOME深度集成
flameshot flameshot 需要编辑或上传的截屏 gui(图形界面)、full(全屏) 支持标注、打码、云上传
import imagemagick 需要复杂参数控制的截屏 -crop(裁剪区域)、-quality(质量) 支持多种图像格式
ffmpeg ffmpeg 视频帧或动态屏幕截取 -f x11grab(屏幕流)、-vframes 1 适合录制屏幕后提取单帧

相关问答FAQs

Q1: 如何使用命令行截屏并自动上传到图床?
A: 可结合scrot(截屏)和curl(上传)实现,先截屏并保存到临时文件:scrot /tmp/s.png,再通过图床API上传(以Imgur为例,需提前获取API密钥):curl -X POST -H "Authorization: Client-ID YOUR_CLIENT_ID" -F "image=@/tmp/s.png" https://api.imgur.com/3/upload,返回结果会包含图片链接,也可使用picup等专门的上传工具简化流程。

linux 如何截屏

Q2: 如何截取特定应用程序的窗口(排除其他窗口)?
A: 不同工具有对应方法:

  • 命令行:scrot -u(截取当前焦点窗口)或gnome-screenshot -w(GNOME环境截取活动窗口)。
  • 图形界面:在GNOME中按Shift+Print Screen,点击目标窗口;在KDE中使用Spectacle,选择“窗口”模式并点击目标窗口。
  • 注意:若窗口有透明效果或边框,需确保工具支持“包含边框”选项(如gnome-screenshot默认包含窗口边框)。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/23176.html

(0)
酷番叔酷番叔
上一篇 2025年9月11日 13:18
下一篇 2025年9月11日 13:33

相关推荐

  • Linux环境下如何创建数据表?

    在Linux环境下创建表通常指在关系型数据库管理系统(RDBMS)中通过SQL语句定义数据结构的过程,常见的数据库包括MySQL、PostgreSQL等,本文将以MySQL和PostgreSQL为例,详细说明在Linux系统中创建表的完整流程,包括环境准备、连接数据库、SQL语法及约束设置等内容,环境准备:安装……

    2025年9月17日
    9900
  • linux服务器如何校时

    Linux 服务器上,可使用 ntpdate 命令或配置

    2025年8月18日
    10500
  • 为什么安装依赖总是失败?

    在 Linux 系统上安装 QEMU 的完整指南QEMU(Quick Emulator)是一款开源的硬件虚拟化工具,允许你在 Linux 系统中创建和运行虚拟机(支持 Windows、Linux 等多种操作系统),它通过硬件加速技术(如 KVM)提供接近原生的性能,适用于开发测试、系统模拟和云计算环境,以下是详……

    2025年8月8日
    10200
  • Linux如何设置待机时间?

    Linux系统中,待机时间的设置是平衡省电与使用体验的重要操作,合理的待机时间既能减少能源消耗,又能避免频繁唤醒硬件影响寿命,不同Linux发行版及桌面环境下,设置方法略有差异,本文将从图形化界面、命令行工具及配置文件修改三个维度详细介绍操作步骤,并附上注意事项与常见问题解答,图形化界面设置(适合普通用户)图形……

    2025年10月6日
    9500
  • 你知道吗?90%的人不知道的真相?

    前提条件安装GCC编译器Linux默认不包含C编译器,需安装GCC(GNU Compiler Collection):sudo apt update && sudo apt install gcc # Debian/Ubuntusudo yum install gcc # CentOS/RHEL……

    2025年7月20日
    10500

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信