第 1 步:下载 Windows amd64 版本 coscli
文档地址:https://cloud.tencent.com/document/product/436/63144
打开上面腾讯官方文档,找到下载链接:coscli-windows-amd64.zip
⚠️ 选 windows-amd64(64 位服务器,绝大多数都是这个)
第 2 步:解压 + 重命名
- 新建文件夹
C:\coscli(路径不要中文、空格) - 把
coscli-windows-amd64.exe丢进 C:\coscli,重命名为:coscli.exe
最终文件路径:
C:\coscli\coscli.exe
第 3 步:验证是否安装成功
- 新打开 CMD(管理员与否都可以)
- 输入命令:
c:\coscli\coscli.exe --version如果输出版本号,代表成功。
第 4 步:初始化配置(只执行一次,CMD 里)
同样用完整路径执行 init 配置:
"C:\coscli\coscli.exe" config init配置信息依旧会保存在用户目录(C:\Users\Administrator.cos.yaml),和有没有环境变量无关。
Input Your Mode:这里直接输入 SecretKey(或者直接回车默认就是 SecretKey)
回车跳过 Mode 之后,后面会依次提示你输入:
- SecretID:你的密钥 ID(一串很长字符)
- SecretKey:你的密钥(另外一串字符)
Input Your Session Token:直接回车,留空!
Session Token 是临时凭证,普通子账号永久密钥不需要填这个,直接按回车跳过。
Disable encryption?默认false,直接回车
Disable automatic bucket type fetching 默认值false,直接回车
这一项:Disable automatic backup domain switching默认是false,直接回车。
含义:自动切换备用域名,保持开启,网络不稳的时候 coscli 会自动换节点,上传备份更稳,不用改。
这一项直接回车,留空
Input the default service domain for listing buckets (ServiceDomain)? 提示:Input nothing will use the default
service.cos.myqcloud.com
意思:列举存储桶的默认服务域名,不输入内容就自动使用腾讯云官方默认域名,完全够用,不需要自定义域名。
提示:Input Your Bucket’s Name
格式要求:桶名称-AppID,示例shujubeifen-1234567890
重点:不是只填桶名,必须带上短横 + 你的腾讯云 AppID
到腾讯云 COS 控制台,找到你的桶,完整复制【桶名称】那一栏的字符串,直接粘贴到这里。
继续,下一步
提示:Input Bucket’s Endpoint
格式:cos.<region>.myqcloud.com
你的桶是北京地域 ap-beijing,直接输入下面这一行:
cos.ap-beijing.myqcloud.com
Input Bucket’s Alias 提示:直接回车不输入,就默认使用原始桶名;也可以自定义别名,方便后续命令简写。
提示:Use customized endpoint for this bucket? (true/false, default: false):
翻译:是否给这个桶使用自定义域名(自定义 Endpoint)?
直接回车,使用默认值false,你不需要自定义域名,保持默认 false 就可以,不用输入任何字符直接回车。

C:\coscli\coscli.exe ls cos://shujubeifen-1234567890/手动同步命令(直接复制运行)
C:\coscli\coscli.exe sync D:\mysql\data cos://shujubeifen-1234567890/说明:增量模式,只会上传新增 / 修改的文件;云端已经存在且内容没变的文件会跳过,不会重复上传。
⚠️ 慎用--delete参数:
C:\coscli\coscli.exe sync D:\mysql\data cos://shujubeifen-1234567890/ --delete加--delete会删除云端存在、本地 D:\mysql\data 没有的文件,适合做完全镜像备份,误操作有丢数据风险。
定时自动备份 BAT 脚本(新建文本文档,粘贴,另存为COS_Backup.bat,编码选 ANSI)
@echo off setlocal enabledelayedexpansion rem COS自动备份脚本 set "LOG=D:\backup_log.txt" echo ====================== echo 开始同步 D:\Cos 到腾讯云COS echo 执行时间:%date% %time% echo ====================== C:\coscli\coscli.exe sync D:\mysql\data cos://shujubeifen-1234567890/ --recursive set "COS_ERR=!errorlevel!" if !COS_ERR! equ 0 ( echo ✅ COS上传成功 >>%LOG% ) else ( echo ❌ COS上传失败,错误码:!COS_ERR! >>%LOG% ) echo ============================================== >>%LOG% echo. >>%LOG% endlocal- 把
pause删掉,任务计划后台执行时就不会弹窗停留。 - 退出代码
0= 正常完成;非 0 代表报错。 - 用
!errorlevel!延迟变量,脚本头部必须开启延迟扩展setlocal enabledelayedexpansion,否则捕获不到 coscli 返回码。 - 新版 coscli,sync 上传本地文件夹,必须加
--recursive参数,不然会报错。