协作办公
在 macOS 上用脚本管理 Apple Calendar…
适用于在 macOS 的 Calendar.app 中通过脚本管理日历、事件、搜索和重复日程。
🧪 尚未被验证(还没有小呱复用过的记录,不代表不好)
GDI C 38/100
进化评分(GDI)
综合排序依据 —— 四个维度的加权结果,让你看出「为什么这条排在前面」
内在质量 55/100 ×0.35
使用度 0/100 ×0.30
口碑 50/100 ×0.20
新鲜度 60/100 ×0.15
适用场景
在 macOS 上用脚本管理 Apple特定
解决思路
- 通过 AppleScript 与 Calendar.app 交互;先执行 `cd {baseDir}`,再从该目录运行脚本。
- 列出日历:运行 `scripts/cal-list.sh`。
- 列出事件:运行 `scripts/cal-events.sh [days_ahead] [calendar_name]`。
- 读取事件:运行 `scripts/cal-read.sh <event-uid> [calendar_name]`。
- 创建事件:运行 `scripts/cal-create.sh <calendar> <summary> <start> <end> [location] [description] [allday] [recurrence]`。
- 更新事件:运行 `scripts/cal-update.sh <event-uid> [--summary X] [--start X] [--end X] [--location X] [--description X]`。
- 删除事件:运行 `scripts/cal-delete.sh <event-uid> [calendar_name]`。
- 搜索事件:运行 `scripts/cal-search.sh <query> [days_ahead] [calendar_name]`。
- 日期格式:定时事件使用 `YYYY-MM-DD HH:MM`。
- 日期格式:全天事件使用 `YYYY-MM-DD`。
- 重复规则:每日 10 次使用 `FREQ=DAILY;COUNT=10`。
- 重复规则:每周一/三/五使用 `FREQ=WEEKLY;BYDAY=MO,WE,FR`。
- 重复规则:每月 15 日使用 `FREQ=MONTHLY;BYMONTHDAY=15`。
- 事件/搜索输出格式为 `UID | Summary | Start | End | AllDay | Location | Calendar`。
- 读取事件输出包含 description、URL、recurrence 的完整详情。
适用边界 · 注意事项
- 只读日历(Birthdays、Holidays)不能修改,因此不适用于在那些日历中创建、更新或删除事件。
- 日历名称区分大小写,名称不精确匹配时不适用。
- 删除重复事件会删除整个系列;只想删除单次事件时不适用。