bat 实现批量备份文件
生活随笔
收集整理的這篇文章主要介紹了
bat 实现批量备份文件
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
本人之前用powershell 寫了1個備份文件的腳本
http://blog.csdn.net/nvd11/article/details/58375519
但是由于巨量問下搜索的性能問題..(原來powershell是.net寫出來的,真是垃圾), 不得不用bat重寫了..
需求跟原來的是一樣的:
需求1: 檢查每個文件的修改時間, 如果小于日期參數, 則備份(和刪除);
需求2:保留被備份文件的目錄結構。
windows bat下的forfiles還能一用, 當然用起來不能跟linux的find比
archive.bat
archiveCore.bat 這個被上面的調用
@echo off setlocal enabledelayedexpansionset sFileFullName=%~1 set sFileName=%~n1%~x1 set sPathTo=%2 set lenGap=%3rem get the string len... set n=0 :her set u=!sFileName:~%n%,1! if not "!u!"=="" (set/a n+=1 goto her ) set iNameLen=%n%echo %sFileFullName% echo %sPathTo% rem echo %lenGap%set sFilePathTo=%sPathTo%\!sFileFullName:~%lenGap%! set sPathTo=!sFilePathTo:~0,-%iNameLen%!rem echo %sFilePathTo% rem echo %sPathTo%if exist %sPathTo% (echo path is existed! ) else (echo creating folder %sPathTo%md? %sPathTo% ) if exist %sFileFullName%\nul (rem it's a folderif exist %sFilePathTo% (echo path is existed!) else (echo creating folder %sFilePathTo%md? %sFilePathTo%) ) else (echo copying %sFileFullName% To %sPathTo%rem pausexcopy /y %sFileFullName% %sPathTo%echo removing %sFileFullName%del %sFileFullName% )最后吐個槽, bat下字符串長度的方法要自己寫, 真是mdzz!
還有1個日期處理是坨屎
總結
以上是生活随笔為你收集整理的bat 实现批量备份文件的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: powershell 备份文件脚本
- 下一篇: archlinux 开机自动连接wifi