为知迁移
wiz-migration
by OpenClaw Assistant
为知笔记迁移辅助技能,提供自动检测存储目录、导出操作引导、附件批量迁移等完整迁移流程
安装
claude skill add --url https://github.com/openclaw/skills文档
为知笔记迁移技能
为知笔记数据迁移辅助工具,提供自动化检测、交互式引导和一键迁移功能。
功能特性
- 🔍 智能检测存储目录:自动查找为知笔记数据目录,支持手动输入
- 📝 导出操作引导:生成带详细步骤的 .md 模板,指导用户正确导出
- 📎 附件批量迁移:自动复制所有 _Attachments 目录到目标位置
- 🖥️ 跨平台支持:Windows 批处理脚本,简化操作
- ⚡ 增量复制:自动跳过已存在的文件,支持重复执行
快速开始
1. 启动迁移向导
# 启动交互式迁移流程
openclaw skill wiz-migration start
# 或在 Python 脚本中调用
from wiz_migration import start_wizard
start_wizard()
2. 按照向导步骤操作
- 检测存储目录:自动尝试查找
C:\Users\Administrator\Documents\My Knowledge\Data\ - 输入导出路径:提供为知笔记导出后的 HTML 文件夹路径
- 生成导出指南:保存为
wiz_export_guide.md - 附件迁移:选择是否自动运行批处理脚本迁移附件
导出操作指南
为知笔记导出设置(必做)
在运行迁移前,需要先在为知笔记中执行导出操作:
- 整理笔记:将所有要迁移的目录和文档移动到同一个父目录下
- 选中笔记本/笔记 → 右键 → 导出文件 → 导出 HTML
- 关键选项:
- ✅ 选择 "导出为多个网页文件(含附件)"
- ❌ 不要选 "单个 HTML 文件"(附件会被 base64 内嵌)
- ❌ 不要勾选 "渲染 Markdown 笔记"(会丢失原始结构)
- 导出到独立空文件夹(如
Wiz_Export)
导出后的目录结构
Wiz_Export/
├── 笔记本1/
│ ├── 笔记1.html
│ ├── 笔记1_files/ # 该笔记的所有附件(图片、PDF、Word等)
│ └── 笔记2.html
└── 笔记本2/
├── 笔记3.html
└── 笔记3_files/
导出后检查
- 每个
.html旁应有同名_files文件夹 - 打开任一 HTML,确认图片/附件能正常显示
- 路径应为相对路径(如
笔记1_files/xxx.png)
附件迁移脚本说明
功能特点
- 批量复制所有
_Attachments目录 - 已存在自动跳过,可重复执行
- 不覆盖现有文件
使用方法
在 PowerShell 或 CMD 中运行:
@echo off
setlocal enabledelayedexpansion
chcp 65001 >nul
title 批量复制 _Attachments 目录
:: ====================== 请修改这里的路径 ======================
set "SOURCE_DIR=C:\Users\Administrator\Documents\My Knowledge"
set "TARGET_DIR=G:\Data\knowledge\wiz"
:: ==============================================================
echo ==============================================
echo 批量复制 _Attachments 目录
echo 功能:已存在自动跳过,可重复执行,不覆盖
echo ==============================================
echo 源目录:%SOURCE_DIR%
echo 目标目录:%TARGET_DIR%
echo.
set COUNT=0
set SKIP=0
for /d /r "%SOURCE_DIR%" %%d in (*_Attachments) do (
set "FULL_PATH=%%d"
set "REL_PATH=!FULL_PATH:%SOURCE_DIR%=!"
set "DEST_PATH=%TARGET_DIR%!REL_PATH!"
echo 源目录:!FULL_PATH!
echo 目标路径:!DEST_PATH!
if exist "!DEST_PATH!" (
echo ⏭️ 已存在,跳过:!REL_PATH!
set /a SKIP+=1
) else (
mkdir "!DEST_PATH!"
xcopy "!FULL_PATH!\*" "!DEST_PATH!\" /E /H /C /R /Q >nul
echo ✅ 复制成功:!REL_PATH!
set /a COUNT+=1
)
echo.
)
echo ==============================================
echo 任务完成
echo 本次新增复制:!COUNT! 个
echo 已存在跳过:!SKIP! 个
echo ==============================================
pause
exit /b
配置说明
修改脚本中的两个路径变量:
set "SOURCE_DIR=你的为知笔记原始数据目录"
set "TARGET_DIR=你要迁移到的目标目录"
API 接口
Python 模块调用
from wiz_migration import (
detect_wiz_data_dir,
generate_export_guide,
run_attachment_migration,
start_wizard
)
# 1. 检测为知笔记数据目录
data_dir = detect_wiz_data_dir()
if not data_dir:
print("未自动检测到,请手动输入路径")
# 2. 生成导出指南
guide_path = generate_export_guide(
export_dir="C:/path/to/Wiz_Export",
output_file="wiz_export_guide.md"
)
# 3. 运行附件迁移
result = run_attachment_migration(
source_dir="C:/Users/Administrator/Documents/My Knowledge",
target_dir="G:/Data/knowledge/wiz",
script_path="scripts/copy_attachments.bat"
)
# 4. 完整向导
start_wizard()
错误处理
| 错误情况 | 原因 | 解决方案 |
|---|---|---|
| 无法自动检测目录 | 非标准安装路径 | 手动输入数据目录路径 |
| 导出路径不存在 | 还未执行导出操作 | 先在为知笔记中导出 HTML |
| 附件复制失败 | 权限不足 | 以管理员身份运行脚本 |
| 中文乱码 | CMD 编码问题 | 确保脚本包含 chcp 65001 设置 |
注意事项
- 备份原始数据:迁移前务必备份整个
My Knowledge目录 - 导出格式:必须选择"多个网页文件(含附件)"格式
- 路径不要包含空格:或使用引号包裹路径
- 附件大小:大附件(>100MB)可能需要较长时间
- 重复执行:附件迁移脚本可安全重复运行,不会覆盖已有文件
迁移完成检查清单
- 为知笔记已导出 HTML 到独立文件夹
- 每个 HTML 文件旁都有对应的
_files文件夹 - 打开 HTML 能正常显示图片和附件
- 已运行附件迁移脚本或手动复制
- 目标目录中所有附件已就位
- 在浏览器中测试打开的 HTML 文件路径是否正确
后续处理
迁移完成后,你可能需要:
- 转换为 Markdown:使用
wiz2md等工具将 HTML 转换为 Markdown - 导入笔记软件:如 Obsidian、Logseq、Notion 等
- 建立双向链接:在新笔记系统中重建关联
- 清理重复:使用去重工具清理重复内容
技术细节
为知笔记数据目录结构
My Knowledge/
├── Data/
│ ├── 账号1/
│ │ ├── index/
│ │ └── attachments/
│ └── 账号2/
└── _Attachments/ # 全局附件目录(部分版本)
存储目录检测逻辑
def detect_wiz_data_dir():
"""检测标准安装路径"""
possible_paths = [
r"C:\Users\Administrator\Documents\My Knowledge\Data",
r"C:\Users\%USERNAME%\Documents\My Knowledge\Data",
os.path.expanduser(r"~/Documents/My Knowledge/Data")
]
for path in possible_paths:
if os.path.exists(path):
return path
return None
支持
如有问题,请检查:
- 是否为标准安装路径
- 是否已正确导出 HTML 格式
- 是否有足够的文件读写权限
相关 Skills
技术栈评估
by alirezarezvani
对比框架、数据库和云服务,结合 5 年 TCO、安全风险、生态活力与迁移复杂度做量化评估,适合技术选型、栈升级和替换路线决策。
✎ 帮你系统比较技术栈优劣,不只看功能,还把TCO、安全性和生态健康度一起量化,选型和迁移决策更稳。
资深数据科学家
by alirezarezvani
覆盖实验设计、特征工程、预测建模、因果推断与模型评估,适合用 Python/R/SQL 做 A/B 测试、时序分析和生产级 ML 落地,支撑数据驱动决策。
✎ 从 A/B 测试、因果分析到预测建模一条龙搞定,既有硬核统计方法也懂业务沟通,特别适合把数据结论真正落地。
资深架构师
by alirezarezvani
适合系统设计评审、ADR记录和扩展性规划,分析依赖与耦合,权衡单体或微服务、数据库与技术栈选型,并输出Mermaid、PlantUML、ASCII架构图。
✎ 搞系统设计、技术选型和扩展规划时,用它能更快理清架构决策与依赖关系,还能直接产出 Mermaid/PlantUML 图,方案讨论效率很高。
相关 MCP 服务
SQLite 数据库
编辑精选by Anthropic
SQLite 是让 AI 直接查询本地数据库进行数据分析的 MCP 服务器。
✎ 这个服务器解决了 AI 无法直接访问 SQLite 数据库的问题,适合需要快速分析本地数据集的开发者。不过,作为参考实现,它可能缺乏生产级的安全特性,建议在受控环境中使用。
PostgreSQL 数据库
编辑精选by Anthropic
PostgreSQL 是让 Claude 直接查询和管理你的数据库的 MCP 服务器。
✎ 这个服务器解决了开发者需要手动编写 SQL 查询的痛点,特别适合数据分析师或后端开发者快速探索数据库结构。不过,由于是参考实现,生产环境使用前务必评估安全风险,别指望它能处理复杂事务。
Firecrawl 智能爬虫
编辑精选by Firecrawl
Firecrawl 是让 AI 直接抓取网页并提取结构化数据的 MCP 服务器。
✎ 它解决了手动写爬虫的麻烦,让 Claude 能直接访问动态网页内容。最适合需要实时数据的研究者或开发者,比如监控竞品价格或抓取新闻。但要注意,它依赖第三方 API,可能涉及隐私和成本问题。