`

dos 删除指定日期前的文件

    博客分类:
  • JAVA
DOS 
阅读更多
@echo off&setlocal enabledelayedexpansion
:: 文件的格式为yyyy-mm-dd.*
:: 以下 dz=备份文件的路径
::      ds=为预定要保留的天数  (可修改,但不要大于28)
set dz=E:\bak
set ds=3
::取当前系统日期的 年、月、日
set dy=%date:~,4%
set dm=%date:~5,2%
::处理月份带0的,比如08,09,去掉前面的0,不然
::会被认为是8进制,导致错误。
::echo 去0前的月份值=%dm%
:again
if "%dm:~0,1%"=="0" (
    set dm=%dm:~1%
    goto again
)
::echo 去0后的月份值=%dm%
set dd=%date:~8,2%
::处理日带0的,比如08,09,去掉前面的0,不然
::会被认为是8进制,导致错误。
::echo 去0前的day值=%dd%
:againc
if "%dd:~0,1%"=="0" (
    set dd=%dd:~1%
    goto againc
)
::echo 去0后的day值=%dd%
echo 当前是  %dy%-%dm%-%dd%日

::计算应该删的文件的最新日期
set /a "feb=^!(%dy%%%4)+28"
if "%dy:~2,2%" equ "00" set/a "feb=!feb!-1+^!(%dy:~,2%%%4)"

set /a "dd-=%ds%"
if %dd% leq 0 (
   set n=0
   set/a dm-=1
   if !dm! equ 0 set/a "dy=%dy%-1,dm=0+12" 
   for %%a in (31 %feb% 31 30 31 30 31 31 30 31 30 31) do (
       set/a n=!n!+1
       if !n! equ %dm% set/a "dd=!dd!+%%a"
    )
 )

set /a "ymd=!dy!*10000+!dm!*100+!dd!"
echo 要删除文件的最新日期为%ymd%以前的


pause

 

0
0
分享到:
评论

相关推荐

    指定日期文件批量删除工具bat

    标题中的“指定日期文件批量删除工具bat”表明这个压缩包包含的是一个或多个批处理(BAT)文件,用于帮助用户批量删除特定日期的文件。在Windows操作系统中,批处理文件是一种文本文件,扩展名为.bat,它能够执行一...

    DOS批处理自动删除7天前的文件及使用说明

    DOS批处理是一种在DOS或Windows操作系统环境下执行一系列命令的文本文件,通常...通过了解这些知识点,你可以更安全、高效地使用DOS批处理自动删除7天前的文件。但请务必谨慎操作,遵循最佳实践,以保护数据的安全。

    利用forfiles自动删除7天前文件DOS批处理

    ::演示:删除指定路径下指定天数之前(以文件的最后修改日期为准)的文件。 ::如果演示结果无误,把del前面的echo去掉,即可实现真正删除。 ::本例需要Win2003/Vista/Win7系统自带的forfiles命令的支持 如果XP需要...

    定时删除过期文件或指定文件

    总结来说,"定时删除过期文件或指定文件"涉及的技术主要包括:批处理文件编写、DOS命令使用、条件判断、循环操作、日期处理以及Windows的SCHTASKS服务。熟练掌握这些技术,可以帮助我们更好地管理和优化系统资源,...

    DOS三个基本启动文件COMMAND.COM MS-DOS.SYS IO.SYS DOS引导文件Boot.rar sys.com

    MSDOS.SYS可以是空文件,甚至可以删除,当然此时系统只能以纯DOS方式启动,不能进入GUI系统。  不同方式形成的MSDOS.SYS默认内容不同,主要有四种,其中前三种方法形成的MSDOS.SYS文件无任何配置命令,几乎是空...

    DOS 概述及入门(DOS的特点、文件与目录、文件的分类……)

    例如,使用`dir`命令查看指定目录的内容,如`dir dos`查看DOS目录。此外,用户还可以学习如何使用其他命令,如`copy`复制文件,`del`删除文件,以及`cd`改变当前目录。 总的来说,DOS是一个基础且强大的操作系统,...

    基于DOS 系统的文件操作

    6. **删除文件**:`del`或`erase`命令用于删除指定的文件。 **多任务系统** DOS本身并不支持真正的多任务并行处理,但在某些情况下,可以通过一些技巧实现简单的任务切换。例如,利用批处理文件(.bat)或一些第三...

    DOS常用命令 EXE文件

    这两个命令也是等价的,例如`DEL filename`将删除指定的文件。 8. **TYPE**:显示文本文件的内容。如果你有一个名为example.txt的文本文件,运行`TYPE example.txt`将在屏幕上显示其内容。 9. **CLS**:清屏命令,...

    非常实用的dos批量删除工具

    具体来说,它能够删除指定路径下指定天数之前的文件,这里的时间判断依据是文件的最后修改日期。通过这种方式,用户可以方便地清理不再需要的老文件。 #### 二、脚本工作原理 为了实现这一功能,脚本采用了以下步骤...

    DOS工具包,集合DOS下命令库,系统文件

    6. **DEL**:删除文件,如`del filename`会删除指定的文件。 7. **REN**:重命名文件或目录,如`ren oldname newname`将oldname更改为newname。 8. **TYPE**:显示文本文件的内容,如`type filename.txt`会打印出...

    DOS手册,DOS手册,DOS

    3. **DEL**:删除指定的文件。 4. **REN**:重命名文件或目录。 5. **FORMAT**:格式化磁盘,为新的数据存储做好准备。 6. **CD**/**CHDIR**:改变当前工作目录。 7. **MD**/**MKDIR**:创建新的目录。 8. **RD**/**...

    DOS编写的电脑系统清理小程序

    1. `DEL`:删除指定的文件,例如临时文件和日志。 2. `RD` 或 `RMDIR`:删除目录,可能用于清除空的缓存文件夹。 3. `DISKCOPY`:用于创建硬盘的副本,可能用于备份系统重要部分,以防清理过程中误删。 4. `SCANDISK...

    Dos常用命令宝典 Dos教程

    `del file.txt` 会删除指定的文件,而 `del *.txt` 则会删除当前目录下所有扩展名为“.txt”的文件。 8. **TYPE**:显示文本文件内容。`type filename.txt` 可以查看文件的内容。 9. **CLS**:清屏,清除屏幕上的...

    删除特定天数外的超时文件

    5. `for /f` 循环遍历目录中的所有非目录文件,并按照修改时间(最新日期在前)排序。 6. `set /a file_age` 计算文件的年龄(今天的日期减去文件的最后修改日期)。 7. `if` 判断语句检查文件是否超过保留天数,...

    如何编写批处理文件批处理文件批处理文件

    %~tI - 将 %I 扩充到文件的日期/时间 %~zI - 将 %I 扩充到文件的大小 %~$PATH:I - 查找列在路径环境变量的目录,并将 %I 扩充 到找到的第一个完全合格的名称。如果环境变量 未被定义,或者没有找到文件,此组合...

    DOS命令主要指令

    6. **DEL/ERASE** - 删除文件:删除指定的文件,使用 `/F` 参数可强制删除只读文件。 7. **REN/RENAME** - 重命名文件或目录:更改文件或目录的名字。 8. **FORMAT** - 格式化磁盘:初始化磁盘,清除所有数据,...

    DOS 常用命令DOS 常用命令DOS 常用命令

    5. **DEL**:删除文件,例如`del filename`会删除指定的文件。 6. **TYPE**:显示文本文件的内容,例如`type filename`可以查看文件的全部文本。 7. **CLS**:清屏,清除屏幕上的所有内容,让命令提示符回到顶部。...

    DOS命令全集(chm格式)

    7. **DEL/ERASE**:删除指定的文件。 8. **FORMAT**:格式化磁盘,准备数据存储。 9. **TYPE**:显示文本文件的内容。 10. **CLS**:清空屏幕。 11. **HELP**:提供关于DOS命令的简要帮助信息。 12. **DATE**:查看...

    操作系统课程设计 DOS文件管理系统的设计

    在DOS中,每个文件都有一个与之关联的目录项,其中包含了文件名、创建日期、访问时间等信息,还包括文件的属性。文件属性包括只读(R)、隐藏(H)、系统(S)和存档(A)。这些属性可以通过某些命令或者程序进行...

    Windows DOSc++常用命令

    4. **del**:删除指定的文件。在开发过程中,如果需要清理不再需要的临时文件或旧版本,这个命令非常实用。 5. **type**:显示文本文件的内容。在查看编译后的C++程序的错误日志或阅读配置文件时,可以用这个命令。...

Global site tag (gtag.js) - Google Analytics