随笔 - 832, 文章 - 0, 评论 - 46, 阅读 - 156万
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
< 2025年2月 >
26 27 28 29 30 31 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 1
2 3 4 5 6 7 8

批处理之删除或备份指定天数之前的文件

Posted on   徐正柱-  阅读(2871)  评论(2编辑  收藏  举报

 

forfiles /p "E:\erpweb\ssolog" /s /m *log /d -15 /c "cmd /c del @path"
示例:删除日志

 

e:
cd E:\Logfiles\W3SVC1
del /q /f *.log
删除IIS日志:

 

复制代码
@echo off
echo 正在清理系统垃圾文件,请稍等......
del /f /s /q %systemdrive%\*._mp
del /f /s /q %systemdrive%\*.gid
del /f /s /q %systemdrive%\*.chk
del /f /s /q %systemdrive%\*.old
del /f /s /q %systemdrive%\recycled\*.*
del /f /s /q %windir%\*.bak
del /f /s /q %windir%\prefetch\*.*
del /f /q %userprofile%\cookies\*.*
del /f /q %userprofile%\recent\*.*
del /f /s /q "%userprofile%\Local Settings\Temporary Internet Files\*.*"
del /f /s /q "%userprofile%\Local Settings\Temp\*.*"
del /f /s /q "%userprofile%\recent\*.*"
echo 清理系统垃圾完成!
echo. & pause  
服务器垃圾清理
复制代码

 

复制代码
@echo ***************************************************************************************
@echo           删除指定天前的文件
@echo   1.设置需要删除文件所在的文件路径
@echo   2.设置需要删除多少天之前
@echo ***************************************************************************************
@echo off
set /p SrcDir="请输入需要删除的文件所在文件路径(如d:\test):"
set /p DaysAgo="请设置需要删除多少天之前(50):"

:start
forfiles /p %SrcDir% /s /m *.* /d -%DaysAgo% /c "cmd /c  echo @path"

set /p noyes=请确认是否删除上述文件(n/y;n:否,y:是)
if /i "%noyes%"=="n" (echo 您输入是n, 已经取消删除!
) else ( 
 forfiles /p %SrcDir% /s /m *.* /d -%DaysAgo% /c "cmd /c  del /f /q /a @path" 
 echo ..............................删除文件完成................................
)

set /p goon=是否继续删除文件(n/y;n:否,y:是)
if /i "%goon%"=="n" (echo 您输入是n, 已经取消继续删除! 
) else (goto :start 
)

pause>nul
goto :eof
delfileforAgoDays.bat
复制代码

 

复制代码
@echo ***************************************************************************************
@echo           备份指定天前的文件
@echo   1.设置需要备份文件所在的文件路径
@echo   2.设置需要备份n天之前
@echo ***************************************************************************************
@echo off
set /p SrcDir="请输入需要备份的文件所在文件路径(如d:\test):"
set /p TargetDir="请输入文件备份存储的文件路径(如c:\test):"
set /p DaysAgo="请设置需要备份多少天之前(如:50):"

:start
forfiles /p %SrcDir% /s /m *.* /d -%DaysAgo% /c "cmd /c  echo @path"

set /p noyes=请确认是否备份上述文件(n/y;n:否,y:是)
if /i "%noyes%"=="n" (echo 您输入是n, 已经取消备份!
) else ( 
 forfiles /p %SrcDir% /s /m *.* /d -%DaysAgo% /c "cmd /c  copy  @path  %TargetDir%" 
 echo ..............................备份文件完成................................
)

set /p goon=是否继续备份文件(n/y;n:否,y:是)
if /i "%goon%"=="n" (echo 您输入是n, 已经取消继续备份! 
) else (goto :start 
)

pause>nul
goto :eof
copyfileforAgoDays.bat
复制代码

 

编辑推荐:
· [.NET]调用本地 Deepseek 模型
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· .NET Core 托管堆内存泄露/CPU异常的常见思路
· PostgreSQL 和 SQL Server 在统计信息维护中的关键差异
· C++代码改造为UTF-8编码问题的总结
阅读排行:
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· 实操Deepseek接入个人知识库
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· 【.NET】调用本地 Deepseek 模型
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
历史上的今天:
2008-10-13 游标-Oracle游标使用大全
点击右上角即可分享
微信分享提示