使用 rclone 备份文件 Windows 篇

前文 实现了在 Linux 下用 rclone 备份文件,这次在 Windows 下也来实现备份。

rclone 的配置同前文,直接上备份的脚本。

脚本

@echo off
chcp 65001 >nul

for /f %%a in ('echo prompt $E^| cmd') do set "ESC=%%a"

set "RED=%ESC%[91m"
set "GREEN=%ESC%[92m"
set "YELLOW=%ESC%[93m"

set "BLINK=%ESC%[5m"
set "RESET=%ESC%[0m"

echo %RED%Koofr %RESET%%GREEN%备份任务开始 - %date% %time% %RESET%

echo %YELLOW%[1/3] 正在同步 xxx 文件夹%BLINK%%YELLOW%...%RESET%
"rclone.exe" sync "xxx" "koofr:/xxx/" ^
    --fast-list ^
    --skip-links ^
    --no-update-modtime ^
    --local-no-check-updated ^
    --exclude "desktop.ini" ^
    --delete-excluded ^
    --stats-one-line ^
    --stats=0 ^
    --verbose

echo %YELLOW%[2/3] 正在同步 yyy 文件夹%BLINK%%YELLOW%...%RESET%
"rclone.exe" sync "yyy" "koofr:/yyy/" ^
    --fast-list ^
    --skip-links ^
    --no-update-modtime ^
    --local-no-check-updated ^
    --exclude ".git/**" ^
    --exclude ".venv/**" ^
    --exclude "__pycache__/**" ^
    --delete-excluded ^
    --stats-one-line ^
    --stats=0 ^
    --verbose

echo %YELLOW%[3/3] 正在同步 zzz 文件夹%BLINK%%YELLOW%...%RESET%
"rclone.exe" sync "zzz" "koofr:/zzz/" ^
    --fast-list ^
    --skip-links ^
    --no-update-modtime ^
    --local-no-check-updated ^
    --stats-one-line ^
    --stats=0 ^
    --verbose

echo %GREEN%备份任务全部完成 - %date% %time% %RESET%

pause

说明

各个目录备份时,可以设置不同的参数:

  • --fast-list:减少列出文件时的 HTTP 请求次数
  • --stats-one-line: 强制日志输出在一行内显示,避免刷屏
  • --stats=0: 统计信息更新间隔,0 意味着不输出统计摘要
  • --skip-links: 跳过符号链接
  • --no-update-modtime: 不在目标端更新修改时间,节省操作,提升速度
  • --local-no-check-updated: 不检查本地源文件是否被更改,也是提高效率
  • --verbose: 详细显示
  • --exclude "……": 排除某个文件或目录
  • --delete-excluded: 如果云端已经存在了被排除的文件(比如之前上传过),加上这个参数后,会把云端那些符合排除规则的文件删掉,确保云端干净

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注