Caldav Calendar

📅 命令行日历同步与极速查询

效率工具榜 #1

基于 vdirsyncer + khal 的 Linux 纯命令行日历管理方案,支持 iCloud/Google/Fastmail/Nextcloud 同步,零界面、全键盘操作。

收藏
75.2k
安装
26.7k
版本
1.0.1
CLS 安全性认证2026-04-30
点击查看完整报告 >

使用说明

核心功能与用法

caldav-calendar 是一套面向 Linux 极客用户的命令行日历管理方案,通过组合 vdirsyncer(CalDAV 同步器)和 khal(TUI 日历查看器)实现本地与云端日历的双向同步。核心工作流为:先执行 vdirsyncer sync 拉取远程数据,再用 khal 进行查询、创建、搜索或交互式编辑。

查询场景khal list 支持多维度视图——当日、未来 N 天、指定日期区间、特定日历筛选,配合 --format 可输出结构化数据供脚本消费。搜索功能支持标题模糊匹配,并支持自定义输出模板。

创建与编辑khal new 支持快速创建普通事件或全天事件,可通过 :: 追加描述。khal edit 进入交互式菜单(需 TTY),支持修改标题、时间、地点、描述及删除操作。所有变更需再次执行 vdirsyncer sync 方能推送至云端。

显著优点

1. 去 GUI 化:完全脱离图形界面,适合 SSH 远程服务器、tmux 会话或 Wayland 极简环境
2. 开放格式:本地存储为纯文本 .ics 文件,可手动审计、版本控制或灾难恢复

3. 多云兼容:统一接口对接 iCloud、Google、Fastmail、Nextcloud 等主流 CalDAV 服务商

4. 脚本友好:格式化输出支持变量占位符(uid、calendar、location 等),易于集成自动化流程

局限性与风险

  • TTY 依赖khal edit 必须依附终端,纯后台自动化需借助 tmux 等工具
  • 缓存机制:khal 依赖本地 SQLite 缓存,异常时需手动清除 ~/.local/share/khal/khal.db
  • 配置门槛:首次使用需编写两段 INI 配置文件(vdirsyncer + khal),对新手不够友好
  • 工具链依赖:需独立安装并维护 vdirsyncer 和 khal,发行版包版本可能滞后

适合人群

  • Linux 重度终端用户、i3/Sway 窗口管理器使用者
  • 需要远程服务器日历管理的 DevOps/运维人员
  • 追求数据本地可控、厌恶专有格式的隐私敏感用户

常规风险

  • 凭证管理:配置文件若权限设置不当,password.fetch 指向的密码文件可能被其他用户读取
  • 同步冲突:多设备并发修改时依赖 vdirsyncer 的冲突解决策略(示例配置为 "a wins"),可能造成数据覆盖
  • 服务可用性:依赖各云厂商 CalDAV 端点稳定性,Google 日历需特殊 OAuth 配置(非标准密码)

Caldav Calendar 内容

手动下载zip · 1.8 kB
SKILL.mdtext/markdown
请选择文件