macOS 内置的命令行截屏/录屏工具,无需安装第三方软件即可完成屏幕捕捉的各种操作。
基本用法
screencapture [选项] [输出文件]
常用参数
输出目标
| 参数 | 说明 |
|---|
-c | 将截图直接保存到剪贴板,无需文件 |
-P | 截图后自动在 Preview 中打开 |
-M | 截图后自动创建新邮件并添加为附件 |
-I | 截图后自动在 Messages 中打开 |
-B <bundleid> | 截图后用指定 bundle ID 的应用打开 |
捕捉模式
| 参数 | 说明 |
|---|
-i | 交互式捕捉:空格键切换选区/窗口模式,Esc 取消,按住 Control 键捕捉到剪贴板 |
-s | 仅允许选区模式 |
-w | 仅允许窗口模式 |
-W | 启动时直接进入窗口选择模式 |
-m | 仅捕捉主显示器 |
-D <n> | 捕捉指定编号的显示器(-D 1 为主显示器) |
-l <windowid> | 捕捉指定 ID 的窗口 |
-R <x,y,w,h> | 捕捉指定坐标和尺寸的矩形区域 |
输出选项
| 参数 | 说明 |
|---|
-t <格式> | 指定输出格式,默认 png,支持 jpg/pdf/tiff/gif 等 |
-o | 窗口捕捉时不包含窗口阴影 |
-C | 包含鼠标指针(仅非交互式模式) |
-x | 截图时不播放快门声音 |
-r | 不添加 DPI 元数据到图片 |
-T <秒数> | 延迟指定秒数后截图 |
视频录制
| 参数 | 说明 |
|---|
-v | 录制屏幕视频 |
-V <秒数> | 录制指定时长的视频 |
-g | 录制视频时同时录制系统音频 |
-G <id> | 使用指定音频设备录制 |
-k | 视频中显示鼠标点击效果 |
实用示例
基础用法
# 全屏截图保存到桌面
screencapture ~/Desktop/screenshot.png
# 交互式截图并保存到剪贴板
screencapture -c -i
# 延迟3秒截图,包含鼠标指针
screencapture -T 3 -C ~/Desktop/delayed.png
窗口捕捉
# 选择窗口截图,无阴影,保存为jpg
screencapture -w -o -t jpg ~/Desktop/window.jpg
# 直接截取指定 ID 的窗口
screencapture -l 12345 ~/Desktop/specific-window.png
区域捕捉
# 截取屏幕左上角 1920x1080 区域
screencapture -R 0,0,1920,1080 ~/Desktop/region.png
# 选区截图后自动在 Preview 中打开
screencapture -s -P
视频录制
# 录制屏幕视频,包含音频
screencapture -v -g ~/Desktop/screencast.mp4
# 录制10秒视频并保存
screencapture -v -V 10 ~/Desktop/10sec-recording.mp4
实用别名(可加入 ~/.zshrc)
# 选区截图到剪贴板
alias sc='screencapture -c -i'
# 窗口截图到桌面
alias scw='screencapture -w -o ~/Desktop/$(date +%Y%m%d%H%M%S).png'
# 全屏截图到桌面
alias scf='screencapture ~/Desktop/$(date +%Y%m%d%H%M%S).png'
# 录制屏幕(Ctrl+C 停止)
alias rec='screencapture -v -g ~/Desktop/recording-$(date +%Y%m%d%H%M%S).mp4'
注意事项
- 通过 SSH 远程执行时,需要与
loginwindow 处于同一 mach bootstrap 层级
- 窗口 ID 可通过
sips -g all /path/to/image.png 或 Quartz 相关工具查询
- 视频录制默认保存为 .mov 格式,指定 .mp4 后缀会自动转换编码