You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

是否有与curl/wget功能反向的Windows命令行工具可上传目录到WebDAV服务器?

符合需求的Windows命令行WebDAV目录上传工具推荐

以下工具均支持单行命令调用,可直接嵌入Windows批处理脚本使用:


1. Rclone(最推荐,适配性强)

Rclone是开源的云存储命令行同步工具,原生支持WebDAV协议,无需提前配置存储远程端,可直接通过传参实现单行目录上传:

rclone copy C:\本地要上传的目录树路径 :webdav:远程目标路径 --webdav-url=https://你的WebDAV服务器地址 --webdav-user=你的账号 --webdav-pass=你的密码
  • 支持增量上传、断点续传,可额外加--delete参数实现两端目录完全同步
  • 直接下载Windows二进制文件即可使用,无需安装
  • 如果担心批处理内明文泄露密码,可先通过rclone obscure 你的明文密码生成加密串填入密码参数位置

2. WinSCP 命令行模式

WinSCP的命令行版本原生支持WebDAV,也可实现单行调用:

winscp.com /command "open davs://你的账号:你的密码@你的WebDAV服务器地址/" "synchronize remote C:\本地要上传的目录树路径 /远程目标路径" "exit"
  • 完全兼容Windows环境,支持自动处理编码、权限问题
  • 如果你的WebDAV服务走HTTP协议,把地址前缀的davs://改成dav://即可

3. PowerShell 原生命令(无需额外安装工具)

如果不想安装第三方工具,可直接调用PowerShell内置接口封装成单行批处理命令,适配轻量化上传场景:

powershell -Command "$source = 'C:\本地目录路径'; $dest = 'https://WebDAV地址/目标路径/'; $user = '账号'; $pass = ConvertTo-SecureString '密码' -AsPlainText -Force; $cred = New-Object System.Management.Automation.PSCredential($user,$pass); Get-ChildItem $source -Recurse -File | ForEach-Object { $relPath = $_.FullName.Substring($source.Length); $webDavPath = $dest.TrimEnd('/') + $relPath.Replace('\','/'); $wc = New-Object System.Net.WebClient; $wc.Credentials = $cred; $wc.UploadFile($webDavPath, 'PUT', $_.FullName) }"
  • 无需下载额外软件,缺点是大文件、多层目录场景下稳定性不如前两个工具

内容的提问来源于stack exchange,提问作者Walter Schrabmair

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 11:45:06