gog 综合评估
gog 是一款面向 Google Workspace 生态系统的命令行工具(CLI),由开发者 steipete 维护并通过 Homebrew 分发。该工具封装了 Google 官方 API,提供对 Gmail、日历、云端硬盘、通讯录、表格和文档六大核心服务的终端级操作能力。
核心用法
gog 采用 OAuth 2.0 认证机制,用户需先通过 gog auth credentials 配置 Google Cloud 客户端凭据,再为指定邮箱账户授权所需服务。日常操作涵盖:
- Gmail:搜索邮件(支持 Gmail 搜索语法)、发送邮件
- 日历:查询指定时间段内的事件
- 云端硬盘:文件搜索与检索
- 通讯录:联系人列表导出
- 表格:单元格读取、更新、追加、清除及元数据查询
- 文档:导出为多种格式(txt/html/markdown)或直接在终端查看
脚本化场景下,建议启用 --json 和 --no-input 标志以获得结构化输出。通过设置 GOG_ACCOUNT 环境变量可避免重复指定账户参数。
显著优点
1. 统一入口:单一工具覆盖 Google Workspace 高频场景,无需切换多个专用 CLI
2. 原生 OAuth:遵循 Google 标准授权流程,不存储用户密码
3. 结构化输出:JSON 模式便于与 jq 等工具链集成
4. Sheets 操作完整:支持行列级别的精细化数据操作,适合自动化报表场景
局限与风险
- 认证门槛:需自行在 Google Cloud Console 创建 OAuth 应用并下载
client_secret.json,对非技术用户不友好 - 权限范围宽泛:一次授权即授予对整个 Google 账户的访问,需警惕令牌泄露
- 无内置令牌加密:凭据以明文形式存储于本地配置文件
- 社区维护:由个人开发者维护,非 Google 官方出品,长期支持存在不确定性
- Docs 编辑受限:仅支持导出/查看,不支持原位编辑
适合人群
- 需要批量处理 Gmail/Google Sheets 的自动化工程师
- 偏好终端工作流的开发者与数据分析师
- 已熟悉 OAuth 配置的技术团队
风险提示
令牌文件(通常位于 ~/.config/gog/)包含敏感凭据,建议:
- 设置文件系统权限为 600
- 避免将凭据提交至版本控制
- 定期在 Google 账户安全中心撤销闲置授权