无忧启动论坛

标题: 有没有办法实现bat批处理同步文件到webdav [打印本页]

作者: ql1307096    时间: 2024-11-11 18:29
标题: 有没有办法实现bat批处理同步文件到webdav
本帖最后由 ql1307096 于 2024-11-11 18:30 编辑

如题,我想把本机的一些文件与webdav服务器上进行同步,我当前用的是curl命令。不过感觉不太好,有没有更好的方法可是实现同步的?目前我是这样写的:
@echo off
::备份/恢复进度,参数/u为备份,/r为恢复
if "%~1"=="/u" (
    curl -v -u "用户名":"密码" -T "d:\gamgs\save\01.dat" "https://dav.jianguoyun.com/dav/1/"

) else if "%~1"=="/r" (
    curl -v -u "用户名":"密码" -o "d:\gamgs\save" "https://dav.jianguoyun.com/dav/1/01.dat"
)



然后再计划任务里创建开机脚本和关机脚本,每次开关机运行一下。但是总感觉不太好。

有没有什么好的办法可以直接同步的,不使用其他软件?


作者: fruds9981    时间: 2024-11-11 20:41
标记以方便后续学习
作者: 458608177    时间: 2024-11-11 20:57
标记以方便后续学习
作者: szwp    时间: 2024-11-11 22:10
mklink
作者: 2012飘水    时间: 2024-11-11 23:16
来看看学习一下
作者: squaller    时间: 2024-11-12 00:12
装个现成的同步软件会更简单些,我现在用的是seafile
作者: wangyibin    时间: 2024-11-12 02:21
本帖最后由 wangyibin 于 2024-11-12 02:23 编辑

为了更高效、简便地同步文件,可以尝试使用一些专门的同步工具,例如 rclone 或 rsync,它们比 curl 更适合于文件同步,并支持断点续传、增量同步等功能。

使用 rclone 进行 WebDAV 同步
rclone 是一个功能丰富的命令行工具,支持与 WebDAV 服务器同步文件。以下是一个简单的设置流程:


这样,rclone 会自动检测文件的变更情况,只同步有更新的文件,更加高效。






作者: wjgyz740526    时间: 2024-11-12 04:11
收藏一下
作者: ql1307096    时间: 2024-11-12 09:37
wangyibin 发表于 2024-11-12 02:21
为了更高效、简便地同步文件,可以尝试使用一些专门的同步工具,例如 rclone 或 rsync,它们比 curl 更适合 ...

感谢分享,不过我刚才测试发现rclone同步是用了2个不同命令行,结果跟我用系统自带的curl差不多。有没有办法只用一条命令的?
作者: martin313    时间: 2024-11-12 10:05
最近webdav有点火?刚刚前几天把webdav组件成功搞到PE中
作者: wangyibin    时间: 2024-11-12 11:03
本帖最后由 wangyibin 于 2024-11-12 11:04 编辑
ql1307096 发表于 2024-11-12 09:37
感谢分享,不过我刚才测试发现rclone同步是用了2个不同命令行,结果跟我用系统自带的curl差不多。有没有 ...

你可以使用 rclone copy 或 rclone sync 命令并结合 --backup-dir 参数实现增量备份或同步,在一条命令中完成上传和下载的条件性同步。以下是一个示例,只需一条命令即可处理文件更新:
  1. rclone sync "d:\gamgs\save" remote:/dav/1 --backup-dir remote:/dav/backup/`date +%Y-%m-%d`
复制代码

单条命令实现双向同步
如果希望使用一条命令实现更完善的双向同步,可以试试 rclone bisync 命令(需要 rclone 1.55 或更高版本支持),这会使本地和远程目录保持一致。
命令如下:
  1. rclone bisync "d:\gamgs\save" remote:/dav/1 --resync
复制代码

--resync 参数用于初始化同步,会使本地和远程文件夹保持一致;之后的同步会智能化,仅同步有差异的部分。







作者: szwp    时间: 2024-11-12 11:06
不使用其他软件是怎么定义的?只用系统自带的?2017年前的系统不带curl的。
作者: dshit    时间: 2024-11-12 11:52
不懂,我可能会 先开机挂载 webdav到具体目录  然后用copy 啊或者xcopy之类的 去拷贝。就是不知道拷贝过去的文件时间日期会不会有异常,会不会有文件损坏
作者: guong    时间: 2024-11-12 14:37
来学习了
作者: ql1307096    时间: 2024-11-12 18:38
martin313 发表于 2024-11-12 10:05
最近webdav有点火?刚刚前几天把webdav组件成功搞到PE中

没有吧,webdav我用了好多年,最开始是用它来同步android阅读的进度,主要是它不需要专用的客户端。
作者: ql1307096    时间: 2024-11-12 18:39
wangyibin 发表于 2024-11-12 11:03
你可以使用 rclone copy 或 rclone sync 命令并结合 --backup-dir 参数实现增量备份或同步,在一条命令中 ...

谢谢了,我再研究下,rclone还是第一次用
作者: martin313    时间: 2024-11-12 19:24
ql1307096 发表于 2024-11-12 18:38
没有吧,webdav我用了好多年,最开始是用它来同步android阅读的进度,主要是它不需要专用的客户端。

PE里用了好多年?
作者: ql1307096    时间: 2024-11-13 08:27
martin313 发表于 2024-11-12 19:24
PE里用了好多年?

从来没有使用pe作为上网系统,最多也就是挂载局域网系统镜像安装系统而已。
作者: wn168cn@163.com    时间: 2024-11-13 08:43
感谢7楼分享
作者: zhenghui    时间: 2024-11-13 08:53
好东西啊、最近有学习了很多新东西啊
作者: martin313    时间: 2024-11-13 09:45
ql1307096 发表于 2024-11-13 08:27
从来没有使用pe作为上网系统,最多也就是挂载局域网系统镜像安装系统而已。

我的PE也不上网,但PE如果能挂载网盘,那不是挺好嘛,出去搞维修,就不用带很多U盘或者移动硬盘了,直接在网盘里提取软件
作者: 孟仁飞    时间: 2024-11-13 09:59
学习
作者: 812858338    时间: 2024-11-13 11:04
标记以方便后续学习
作者: brant8    时间: 2024-11-14 20:14
标记以方便后续学习




欢迎光临 无忧启动论坛 (http://wuyou.net/) Powered by Discuz! X3.3