联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!
:: DelOld.Bat - 删除当前文件夹中最早被修改的一个文件 :: Will Sort - 2004/06/26 :: 2004/11/13 Updated @echo off if [%1]==[$] goto %2 :: 创建并执行一个DEBUG脚本,以生成一个设置变量 %File% 的前缀文件 :MakeScr echo e 100 'set File='> ~DelOld.asd for %%s in (rcx 9 n~DelOld.pre w q) do echo %%s>> ~DelOld.asd debug < ~DelOld.asd > nul if [%OS%]==[Windows_NT] chcp 936>nul if not exist ~DelOld.pre %0 $ Error Can't make prefix file. :: 设置变量 %File% 为最旧文件并将其所指的文件之删除(不会删除自身) :: 若想删除目录,可将1句中的 /a-d 改为 /ad,4句中的del 改为deltree /y :DelAnOld dir %1 /a-d /od /b | find "DelOld" /v /i >> ~DelOld.pre find "set File=" < ~DelOld.pre > ~DelOld.bat call ~DelOld.bat if not "%File%"=="" del "%File%" :: 清理生成的临时文件 :Clear for %%f in (~DelOld*.*) do del %%f set File= goto end :: 错误处理 :Error shift shift echo. echo Error: %1 %2 %3 %4 %5 %6 %7 %8 %9 echo. goto end :end