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

CSDN 2024-06-15 09:37:11 阅读 87

一、备份脚本编写

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 chcp 65001 :: 设置备份文件夹路径 set "backup_folder=D:\sql\oracle\win-backup" :: 调用PowerShell脚本来删除三天前的文件夹 powershell -Command "$limit_date = (Get-Date).AddDays(-3); Get-ChildItem -Path '%backup_folder%' -Directory -Recurse | Where-Object { $_.LastWriteTime -lt $limit_date } | Remove-Item -Recurse -Force; Write-Host 'Deleted backup folders older than 3 days.'" :: 输出完成消息 echo Deleted backup folders older than 3 days. endlocal pause

四、创建定时任务

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



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。