Windows___定时备份___自动备份文件夹
bat方式适合设置开机启动
VBScript方式适合定时任务,每天几点几分
配合微软E5 5T OneDrive账号使用,异盘备份+云端备份
为什么不用OneDrive的备份因为他会把文件移动到你设置的盘符
从此你多了一个5T的云端备份,可以添加任何路径文件夹
以下脚本属于增量备份,只复制新文件,自动删除源文件夹删除的文件。
BAT方式
当你想要将 robocopy
命令写入一个批处理文件(.bat)时,你可以创建一个文本文件,然后将以下命令复制粘贴到文件中,最后将文件保存为 .bat
格式。
@echo off
robocopy "C:\Users\789cn\Documents" "E:\OneDrive - 789cn\Auto backup\Documents" /MIR /W:0 /R:1 > "E:\OneDrive - 789cn\Auto backup\backup_Documents.log"
@echo off
robocopy "C:\Users\789cn\Pictures" "E:\OneDrive - 789cn\Auto backup\Pictures" /MIR /W:0 /R:1 > "E:\OneDrive - 789cn\Auto backup\backup_Pictures.log"
@echo off
robocopy "C:\Users\789cn\Desktop" "E:\OneDrive - 789cn\Auto backup\Desktop" /MIR /W:0 /R:1 > "E:\OneDrive - 789cn\Auto backup\backup_Desktop.log"
@echo off
robocopy "C:\Users\789cn\Saved Games" "E:\OneDrive - 789cn\Auto backup\Saved Games" /MIR /W:0 /R:1 > "E:\OneDrive - 789cn\Auto backup\backup_Saved Games.log"
在这个批处理文件中
@echo off
是用来关闭命令行的命令回显,从而使运行时不会在命令窗口中显示每个命令。robocopy
: 这是一个强大的 Windows 命令行工具,用于复制文件和目录。在这里,它被用于从源目录复制文件到目标目录,实现同步备份。"C:\Users\789cn\Documents"
: 这是源目录,即要备份的原始文件夹的路径。"E:\OneDrive - 789cn\Auto backup\Documents"
: 这是目标目录,即备份文件要复制到的目标文件夹的路径。/MIR
: 这个选项表示镜像模式,它会确保目标目录和源目录的内容相同,包括删除目标目录中不再存在于源目录中的文件。/W:0
: 这个选项设置等待时间为 0 秒。如果出现问题,robocopy
将等待 0 秒后重试。/R:1
: 这个选项设置重试次数为 1。如果在第一次尝试后未成功,robocopy
将尝试再次复制文件。>
: 这个符号用于将命令的输出重定向到文件。"E:\OneDrive - 789cn\Auto backup\backup_Documents.log"
: 这是用于存储robocopy
命令输出的文件路径,即备份日志的位置。
你可以保存这个文件并随时运行它,或者将其添加到任务计划程序中以定期执行。确保在运行批处理文件之前备份重要数据,以免意外删除或更改文件。
最好将整个路径用双引号括起来,以确保
robocopy
正确解释路径。
整合一起
@echo off
robocopy "C:\Users\789cn\Documents" "E:\OneDrive - 789cn\Auto backup\Documents" /MIR /W:0 /R:1 > "E:\OneDrive - 789cn\Auto backup\backup_Documents.log"
robocopy "C:\Users\789cn\Pictures" "E:\OneDrive - 789cn\Auto backup\Pictures" /MIR /W:0 /R:1 > "E:\OneDrive - 789cn\Auto backup\backup_Pictures.log"
robocopy "C:\Users\789cn\Desktop" "E:\OneDrive - 789cn\Auto backup\Desktop" /MIR /W:0 /R:1 > "E:\OneDrive - 789cn\Auto backup\backup_Desktop.log"
robocopy "C:\Users\789cn\Saved Games" "E:\OneDrive - 789cn\Auto backup\Saved Games" /MIR /W:0 /R:1 > "E:\OneDrive - 789cn\Auto backup\backup_Saved Games.log"
在任务计划程序中设置开机启动运行 bat
文件的步骤如下:
- 打开任务计划程序: 在 Windows 搜索栏中输入 “任务计划程序”,然后点击打开。
- 创建基本任务: 在右侧的 “操作” 面板中选择 “创建基本任务…”。
- 设置名称和描述: 输入一个名称和描述,然后点击 “下一步”。
- 选择触发器: 选择 “启动时” 作为触发器,然后点击 “下一步”。
- 选择启动程序: 选择 “启动程序” 作为操作,然后点击 “下一步”。
- 选择程序和参数:
- 在 “程序/脚本” 中浏览并选择你的
bat
文件的完整路径。 - 如果
bat
文件需要特定的工作目录,请在 “起始于” 中指定该目录。
- 在 “程序/脚本” 中浏览并选择你的
- 完成设置: 点击 “完成” 完成设置。
这样,你的任务就会被创建,并在系统启动时运行你的 bat
文件。请确保 bat
文件中的路径和命令是正确的,并且文件没有语法错误。
日记如下
总数 复制 跳过 不匹配 失败 其他
目录: 98 2 96 0 0 0
文件: 639 17 622 0 0 0
字节: 8.163 g 2.81 m 8.160 g 0 0 0
时间: 0:00:00 0:00:00 0:00:00 0:00:00
速度: 327,416,777 字节/秒。
速度: 18,734.938 MB/分钟。
已结束: 2024年1月18日 8:20:23
VBScript 方式
你可以通过使用 VBScript 或 PowerShell 脚本等方法来隐藏命令窗口。以下是使用 VBScript 的一个示例:
- 创建一个新的文本文件,将以下内容复制并粘贴进去:
Set objShell = WScript.CreateObject("WScript.Shell")
' First robocopy command
objShell.Run "cmd /c robocopy ""C:\Users\789cn\Documents"" ""E:\OneDrive - 789cn\Auto backup\Documents"" /MIR /W:0 /R:1 > ""E:\OneDrive - 789cn\Auto backup\backup_Documents.log""", 0, True
' Second robocopy command
objShell.Run "cmd /c robocopy ""C:\Users\789cn\Pictures"" ""E:\OneDrive - 789cn\Auto backup\Pictures"" /MIR /W:0 /R:1 > ""E:\OneDrive - 789cn\Auto backup\backup_Pictures.log""", 0, True
' Third robocopy command
objShell.Run "cmd /c robocopy ""C:\Users\789cn\Desktop"" ""E:\OneDrive - 789cn\Auto backup\Desktop"" /MIR /W:0 /R:1 > ""E:\OneDrive - 789cn\Auto backup\backup_Desktop.log""", 0, True
' Fourth robocopy command
objShell.Run "cmd /c robocopy ""C:\Users\789cn\Saved Games"" ""E:\OneDrive - 789cn\Auto backup\Saved Games"" /MIR /W:0 /R:1 > ""E:\OneDrive - 789cn\Auto backup\backup_Saved Games.log""", 0, True
- 将文件保存为
.vbs
扩展名,例如backup_script.vbs
。 - 双击运行
backup_script.vbs
脚本文件。
这样做将使用 VBScript 的 objShell.Run
方法来执行 robocopy
命令,参数中的 0
将窗口样式设置为隐藏。这样,robocopy
命令将在后台运行,而不会弹出命令窗口。
- 将你的 VBScript 文件保存在你选择的位置,例如
backup_script.vbs
。 - 打开任务计划程序(你可以在控制面板中找到,或者在开始菜单中搜索)。
- 在右侧操作窗格中点击“创建基本任务…”。
- 按照向导设置任务的名称和描述。
- 选择触发器类型(例如“每天”当用户登陆时),并设置任务运行的具体时间。
- 选择“启动程序”动作。
- 浏览并选择
wscript.exe
作为程序/脚本,将参数设置为你的 VBScript 文件的完整路径 - (例如**"E:\OneDrive - 789cn\Auto backup\backup_all_script.vbs”**)。引号也要。
- 在大多数 Windows 系统中,
wscript.exe
的路径为:C:\Windows\System32\wscript.exe - 完成向导,点击“完成”创建任务。
现在,你的 VBScript 将在指定的时间每天运行,并执行用于备份的 robocopy
命令。确保在依赖于计划任务之前先手动测试它,以确保一切按预期工作。
789cn
License:
CC BY 4.0