Agent Skills
返回列表
WorkBuddy C盘迁移到D盘

WorkBuddy C盘迁移到D盘

IT 运维与安全 更新于 2026.08.30

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @user_f64aa26d/workbuddy-migrate-c-disk。

技能介绍

它解决什么问题

WorkBuddy 的用户数据目录固定落在 %USERPROFILE%\.workbuddy,其中 binaries、vendor、app、workspace、plugins 是占空间的大头,常见规模在 1.5~2.5 GB。数据装在系统盘的机器用久了很容易被填满,而重装或改配置并不是解决这个问题的正确姿势。

这个技能做的事是:把整个数据目录搬到另一块盘(默认 D:\WorkBuddy),然后用 目录联接(junction) 顶替原来的位置。软件看到的路径完全不变,不需要重装,读写透明地落到目标盘,C 盘空间就此释放。

技能如何工作

核心链路是「同步 → 校验 → 改名保留 → 建联接」,但执行前先做只读预检:

  • 前置确认:确认源目录存在并统计大小,确认目标盘剩余空间充足,再用 fsutil reparsepoint query 探测源目录是否已经是联接——如果是,直接报告「已完成」,不重复操作。
  • 现场生成脚本:技能包内不附带 .bat 文件(SkillHub 禁止上传可执行脚本),而是在目标机器上生成 D:\WorkBuddy\finish_move.bat,交由用户双击执行。
  • 沙箱内先验证算法:把 robocopy 同步、D⊇S 校验、ren 改名保留、mklink /J 建联接、经联接读取数据这条链路,在临时空目录里原样跑一遍,确认无误后清理临时文件。
  • 交给用户执行:顺序是彻底退出 WorkBuddy(含关闭对话窗口)→ Win+E 进入目标盘目录 → 双击 finish_move.bat → 看到 SUCCESS 后重开软件。
  • 独立核验:查询 reparse point 确认 Print Name 指向目标盘;确认 .workbuddy.migrated.bak 备份存在于 C 盘;比对经联接读到的文件数与目标盘一致。

适用边界与注意点

  • 校验标准是 目标盘包含源盘全部文件且大小一致(D⊇S),不是字节完全相等。app\session、日志和缓存在运行时随时变化,逐字节比对永远对不齐。
  • 不要用回收站 API 删原目录。Microsoft.VisualBasic.FileIO.DeleteDirectory(SendToRecycleBin) 在部分机器上会挂起不返回,导致脚本卡死。改用 ren 原地改名为 .workbuddy.migrated.bak,数据原样可恢复。
  • .bat 里 if/else 块中的 echo 文本不要带小括号,会被当成代码块括号导致整段解析失败;全程用 goto 标签跳转,日志文本保持零括号。
  • 杀进程不能只写 taskkill /IM WorkBuddy.exe。用 PowerShell 按 $_.Name -match 'workbuddy' 结束全部匹配进程(含 Helper),并做「杀 → 等 2 秒 → 复检」。WorkBuddy 运行时会锁目录且持续写入,脚本内置进程复检,用户在同步期间重开则中止。
  • 任一步失败即中止且不删任何东西。迁移成功后可清理 %USERPROFILE%\AppData\Local\@genieworkbuddy-desktop-updater\installer.exe(约 500 MB 更新包,可安全删);.workbuddy.migrated.bak 建议先保留,确认软件长期正常后再手动送回收站。

使用场景

  • C盘剩余空间不足,需要把WorkBuddy的.workbuddy数据目录迁到D盘释放空间。
  • WorkBuddy装在系统盘且C盘快满,希望不重装软件迁移用户数据。
  • 需要确认WorkBuddy数据目录能否安全搬到非系统盘,并保持软件正常读写。
  • 迁移后需要核验目录联接指向目标盘,并确认备份可恢复。

适合人员

  • 需要把WorkBuddy数据从C盘迁到D盘且不重装软件的Windows个人用户。
  • 负责WorkBuddy部署和磁盘空间治理的IT运维工程师。
  • 遇到C盘空间不足、需要安全迁移应用数据的桌面运维人员。
  • 想确认迁移风险、保留备份并完成核验的技术用户。