文件导出
将悦库网盘中的文件批量导出到外部存储。支持三种目标:服务器本地目录、FTP 服务器、SMB/CIFS 共享。
前提:只能在悦库服务器本机运行,且当前账号需要对导出源路径拥有
download(下载)权限。
常用命令(复制使用)
导出到本地目录:
opscli export create --from /archive/docs --to /data/export/docs
导出到 FTP:
opscli export create --from /archive/docs --to ftp://192.168.1.10/backup/docs --username ftpuser --password ftppass
导出到 SMB/CIFS 共享:
opscli export create --from /archive/docs --to smb://192.168.1.20/nas/export/docs --username smbuser --password smbpass
导出指定用户的我的空间:
opscli export create --from user://zhangsan --to /data/export/zhangsan
全量导出(需管理员权限):
opscli export create --from / --to /data/export/full
一次导出多个来源(分号分隔,串行执行):
opscli export create --from "/archive/docs;/archive/video" --to /data/export
导出源格式
| 格式 | 说明 |
|---|---|
/仓库名/目录 | 悦库中的仓库、文件夹或单文件 |
/(或省略 --from) | 全量导出整个网盘(需管理员权限) |
user://账号 | 导出该用户我的空间的全部文件 |
user://* | 依次导出所有用户的我的空间(需管理员权限) |
目录结构保留规则
导出时在目标路径下保留悦库侧的相对目录结构:
--from /archive/docs --to /local/out→ 悦库中/archive/docs/2024/report.pdf导出为/local/out/docs/2024/report.pdf--from user://zhangsan --to /local/out→ 该用户的文件按原目录结构平铺到/local/out/
批量导出(JSON 文件)
推荐用于重复执行或需要审计的场景。
1. 准备批量任务文件 export-batch.json:
[
{ "from": "/archive/docs", "to": "/data/export/docs" },
{ "from": "user://zhangsan",
"to": "ftp://192.168.1.10/backup/zhangsan",
"username": "ftpuser", "password": "ftppass" },
{ "from": "/video-archive",
"to": "smb://192.168.1.20/nas/export/video",
"username": "smbuser", "password": "smbpass",
"on_conflict": "resume" }
]
2. 执行:
opscli export batch --file /data/tasks/export-batch.json
遇错继续:
opscli export batch --file /data/tasks/export-batch.json --on-error continue
冲突处理
目标已存在同名文件时,通过 --on-conflict 控制行为:
| 值 | 说明 |
|---|---|
skip(默认) | 跳过已存在的文件 |
overwrite | 覆盖已存在的文件 |
resume | 续传:已存在且大小相同则跳过,否则重新导出 |