使用bat脚本实现本地文件压缩和删除
生活随笔
收集整理的這篇文章主要介紹了
使用bat脚本实现本地文件压缩和删除
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
使用bat腳本實(shí)現(xiàn)本地文件壓縮與刪除
- 壓縮代碼
- 刪除代碼
- 總結(jié)
壓縮代碼
@echo offrem rem: representative annotation rem a: representative compress command rem -ag:representative current datetime rem -ep:representative don't outer catalogue rem ^: representative br rem D:\temp_files\backup-files\test.rar 代表文件在哪個(gè)位置 test.rar代表壓縮包的名稱 rem D:\temp_files\backup-files\ 代表文件壓縮包需要存放在哪個(gè)位置rem 設(shè)置外層循環(huán)初始化值 set /a site=1rem 設(shè)置終止值 set num=3rem 獲取需要執(zhí)行的文件夾路徑 rem out_loop :set_file_pathif %site% equ 1 (set file_path=D:\TEMP\119.23.182.114\Backup_File\Full\YHBranchDB_Back&set to_path=Z:\119.23.182.114\Backup_File\Full\YHBranchDB_Back)^else if %site% equ 2 (set file_path=D:\TEMP\119.23.182.114\Backup_File\Differential\YHBranchDB_Back&set to_path=Z:\119.23.182.114\Backup_File\Differential\YHBranchDB_Back)^else if %site% equ 3 (set file_path=D:\TEMP\119.23.182.114\Backup_File\TransactionLog\YHBranchDB_Back&set to_path=Z:\119.23.182.114\Backup_File\TransactionLog\YHBranchDB_Back)rem 開啟延時(shí)變量,內(nèi)層自動遍歷,延時(shí)變量引用: !!(雙嘆號)SETLOCAL ENABLEDELAYEDEXPANSION for /r %file_path%\ %%i in (*.bak) do (set file_name=%%~nxirem 替換字符 .bak替換成-bakset file_name2=!file_name:.bak=_bak!rem winrar.exe程序路徑set winrar_path="D:\APPTOOLS\WinRAR\WinRAR.exe"rem 需要壓縮的文件存放路徑set from_path=!file_path!\!file_name!rem 壓縮文件夾指定存放路徑rem %to_path%\%file_name2%rem 執(zhí)行壓縮!winrar_path! a -ep !to_path!\!file_name2!.rar !from_path!rem 壓縮完后刪除原文件if !site! equ 2 (del /q !from_path!)if !site! equ 3 (del /q !from_path!))rem 外層循環(huán)初始化值+1set /a site=site+=1rem 判斷外層條件是否滿足 lep:小于等于 if %site% leq %num% goto :set_file_pathecho backups compress is complete......rem pause刪除代碼
@echo offecho star......rem 設(shè)置外層循環(huán)初始化值 set /a site=1rem 設(shè)置終止值 set num=3rem 判斷獲取需要執(zhí)行的文件夾路徑,并且設(shè)置天數(shù) rem out_loop :set_file_pathif %site% equ 1 (set folder_path=Z:\119.23.182.114\Backup_File\Full\YHBranchDB_Back&set days=-7)^else if %site% equ 2 (set folder_path=Z:\119.23.182.114\Backup_File\Differential\YHBranchDB_Back&set days=-15)^else if %site% equ 3 (set folder_path=Z:\119.23.182.114\Backup_File\TransactionLog\YHBranchDB_Back&set days=-30)rem 開啟延時(shí)變量,內(nèi)層自動遍歷,延時(shí)變量引用: !!(雙嘆號)SETLOCAL ENABLEDELAYEDEXPANSION for /r %folder_path%\ %%i in (*.rar) do (rem 文件名set file_name=%%~nxirem echo !file_name!rem 截取日期set file_date=!file_name:~16,10!set current_date=%date:~0,4%-%date:~5,2%-%date:~8,2%rem “-”號當(dāng)前日期加1天,不帶“-”號當(dāng)前日期減1天call :DateDay "!file_date!" !days! target_date rem 設(shè)置格式set target_date=!target_date:~0,4!-!target_date:~4,2!-!target_date:~6,2!rem echo target_date=!target_date!rem 判斷如果當(dāng)天日期大于等于文件的日期加上指定的日期,則被判斷為過期文件,執(zhí)行刪除if !current_date! geq !target_date! (del /q !folder_path!\!file_name!rem echo "this file is due... ")else (rem echo "this file is valid...")rem echo "=======================")rem 外層循環(huán)初始化值+1set /a site=site+=1rem 判斷外層條件是否滿足 lep:小于等于 if %site% leq %num% goto :set_file_pathecho delete is completed...... pauserem 封裝日期方法 :DateDay @echo off for /f "tokens=1-3 delims=/-:\, " %%a in ('echo/%~1') do ( set /a yy=%%a,mm=100%%b%%100,dd=100%%c%%100) set /a z=14-mm,z/=12,y=yy+4800-z,m=mm+12*z-3,j=153*m+2 set /a j=j/5+dd+y*365+y/4-y/100+y/400-2472633 set /a i=j-%~2,a=i+2472632,b=4*a+3,b/=146097,c=-b*146097,c/=4,c+=a set /a d=4*c+3,d/=1461,e=-1461*d,e/=4,e+=c,m=5*e+2,m/=153,dd=153*m+2,dd/=5 set /a dd=-dd+e+1,mm=-m/10,mm*=12,mm+=m+3,yy=b*100+d-4800+m/10 (if %mm% LSS 10 set mm=0%mm%)&(if %dd% LSS 10 set dd=0%dd%) endlocal&set %~3=%yy%%f%%mm%%f%%dd%&goto :EOF總結(jié)
BAT腳本學(xué)習(xí)參考鏈接:
(1)https://www.cnblogs.com/huangye-dream/p/3584965.html
(2)https://www.cnblogs.com/vincent2012/p/3239672.html
(3)https://www.cnblogs.com/tangxin-blog/p/8058133.html
(4)https://blog.csdn.net/jc_benben/article/details/74178322
(5)https://www.jb51.net/article/52744.htm
(6)https://blog.csdn.net/qq981378640/article/details/52422662
(7)https://blog.csdn.net/Victor2code/article/details/103550260
以上鏈接若有侵權(quán),請聯(lián)系刪除…
總結(jié)
以上是生活随笔為你收集整理的使用bat脚本实现本地文件压缩和删除的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 路由器怎么访问服务器共享文件夹,如何让你
- 下一篇: 关于梅花雪 MzTreeView2.0