win10使用Bat脚本自动化定时备份文件、删除特定文件和文件夹

发布于:2024-03-29 ⋅ 阅读:(38) ⋅ 点赞:(0)

一、备份脚本编写

D:\sql\oracle\win-backup.bat

@echo off  
setlocal enabledelayedexpansion 
:: 设置字符集为UTF-8,这将会使得控制台能够正确显示中文字符。
chcp 65001  
:: 设置源文件夹和目标文件夹  
set "source_folder=D:\sql\oracle\oracle文档" 
set "destination_folder=D:\sql\oracle\win-backup"  
  
:: 检查目标文件夹是否存在,如果不存在则创建  
if not exist "%destination_folder%" mkdir "%destination_folder%"  
  
:: 获取当前日期和时间,用于创建备份文件夹  
for /f "tokens=2 delims==" %%a in ('wmic OS Get localdatetime /value') do set "dt=%%a"  
set "YY=!dt:~2,2!" & set "YYYY=!dt:~0,4!" & set "MM=!dt:~4,2!" & set "DD=!dt:~6,2!"  
set "HH=!dt:~8,2!" & set "Min=!dt:~10,2!" & set "Sec=!dt:~12,2!"  
set "backup_folder=%destination_folder%\%YYYY%-%MM%-%DD%_%HH%-%Min%-%Sec%"  
  
:: 创建备份文件夹  
mkdir "!backup_folder!"  
  
:: 执行备份操作,使用xcopy命令复制文件夹及其内容  
xcopy /E /I /Y "%source_folder%" "!backup_folder!\"  
  
:: 输出备份完成消息  
echo Backup completed: !backup_folder!  
  
endlocal  
pause

二、创建定时任务

2.1 右击win10此电脑图标,选择管理,弹出计算机管理,选择任务计划程序。

在这里插入图片描述

2.2 展开任务计划程序—>任务计划程序库—>右击创建新文件夹为mywinbackup

在这里插入图片描述

2.3 在mywinbackup中右击新建任务

在这里插入图片描述
常规—>名称自定义—>使用最高权限运行
在这里插入图片描述
切换到触发器—>新建触发器—>根据需要设置定时设置
在这里插入图片描述
切换到操作—>新建操作,浏览上面建立的.bat文件,起始于路径选择该.bat文件所在路径,点击确定
在这里插入图片描述
切换到设置,进行勾选过了计划开始时间,立即执行,最后点击确定
在这里插入图片描述

三、删除备份脚本编写

D:\sql\oracle\win-delete.bat

@echo off  
setlocal enabledelayedexpansion  
chcp 65001  
:: 设置备份文件夹路径  
set "backup_folder=D:\sql\oracle\win-backup"  
  
:: 使用forfiles命令删除三天前的文件夹  
forfiles /P "%backup_folder%" /S /M * /C "cmd /c if @isdir==TRUE if @fmod==0 if @ftime<=-3 (echo Deleting '!dirname!@fname!' && rmdir /s /q '!dirname!@fname!')"  
  
:: 输出完成消息  
echo Deleted backup folders older than 3 days.  
  
endlocal  
pause

四、创建定时任务

跟以上步骤操作一致,不再说明。

本文含有隐藏内容,请 开通VIP 后查看