Loading

写个自动备份自动删除的批处理

@echo off

set flname=%date:~0,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%%time:~6,2%

set srcDir=%~dp0lbhs

set dstDir=%~dp0Back

set tmpDir=%~dp0Temp


echo %srcDir%
echo %dstDir%
echo %tmpDir%
echo 删除365天以上的数据
rem 删除365天以上的数据
forfiles /p  "%dstDir%" /s /m *.* /d -3 /c "cmd /c del/f/q @path"

echo 删除空目录
rem 删除空目录
for /f "delims=" %%a in ('dir /ad /b /s "%dstDir%"\^|sort /r') do (
   echo %%a
   rd "%%a"
)

echo 杀掉存在的进程
rem 杀掉存在的进程
taskkill /f /im cchc.exe
taskkill /f /im ch.exe
taskkill /f /im scktsrvr.exe

echo rar压缩备份数据
rem rar压缩备份数据
set WinRarDir=%ProgramFiles%\WinRAR
if exist "%WinRarDir%\WinRAR.exe" (echo 已找到:"%WinRarDir%\WinRAR.exe") else (echo 找不到:"%WinRarDir%\WinRAR.exe"请检查。 & pause&exit)
"%WinRarDir%\WinRAR.exe"  a -r -EP1 "%dstDir%\%flname%.rar" "%srcDir%"

echo copy备份数据
rem copy备份数据
mkdir "%dstDir%\%flname%"
xcopy "%srcDir%" "%dstDir%\%flname%\" /s /e /c /y /h /r

echo 启动程序
rem 启动程序
set scktsrvr=%~dp0scktsrvr.exe
set cchc=%~dp0cchc.exe
set ch=%~dp0ch.exe
echo %scktsrvr%
echo %ch%
echo %cchc%
start "" "%scktsrvr%"
start "" "%ch%"
start "" "%cchc%"
echo %WinRarDir%

pause

  

 

自动将当前目录下的lbhs目录保存到Back目录,按日期建立文件夹。

同时写了复制备份和winrar压缩备份,省的病毒破坏备份文件。

最后再自动执行三个程序来启动程序。

主要针对那些老古董软件使用。

它们使用文本数据库,且源代码丢失,数据库老旧,只能这样凑活用,出问题,直接恢复前一个备份好了。

 

posted @ 2022-08-31 20:10  上官飞鸿  阅读(163)  评论(0)    收藏  举报