删除文件说明:
forfiles /p " D:\home\backup " /d -7 /m *.sql /c "cmd /c echo deleting @file ... && del /f @path"
参数说明:
/p " D:\home\backup "是文件所在目录。
/d -7 删除7天前的文件。
/m *.sql: 指定要操作的文件类型。`*.*`表示所有类型的文件,如果是`*.sql`则仅删除.sql文件。
/c "cmd /c echo deleting @file ... && del /f @path" : 自定义命令,双引号内的命令会在每个匹配的文件上执行。
set day=%date:~0,4%%date:~5,2%%date:~8,2%
set backup_dir=D:\home\backup
set uname=root
set password=wxj9527+
set port=3306
set dbname=kqxt
set remain_day=7
forfiles /p "%backup_dir%" /d -%remain_day% /m *.sql /c "cmd /c echo deleting @file ... && del /f @path"
rem locate mysql_home/bin
cd D:\Program Files\mysql-8.0.31-winx64\bin
d:
mysqldump -h 127.0.0.1 -P %port% -u %uname% -p%password% %dbname% --skip-lock-tables --single-transaction > %backup_dir%\%day%.sql