Board logo

标题: [文件操作] [已解决]批处理删除几天前的文件保留最新的几份 [打印本页]

作者: nonfish    时间: 2009-8-18 09:45     标题: [已解决]批处理删除几天前的文件保留最新的几份

我最近写了个脚本,是想实现删除早期的备份,保留最新的5个备份的脚本.
如下:
其中,backupdir是备份目录,已加到环境变量里了
  1. rem 删除早期备份,保留最新的5个拷贝
  2. dir %backupdir%\1234\*.rar /O:-D >1234.txt
  3. for /F "skip=15 tokens=4" %%a in (1234.txt) do if exist %backupdir%\1234\%%a del %backupdir%\1234.txt\%%a
复制代码

这些命令在cmd里面输的话,回报此时不应有%%a

请问,哪里出错了?

或者,哪位大哥能提供更好的方法实现这样的效果,再下先谢谢啦!

[ 本帖最后由 nonfish 于 2009-8-18 14:18 编辑 ]
作者: aizzw    时间: 2009-8-18 09:48

http://bathome.net/viewthread.php?tid=5112&highlight=%2Baizzw
可以参考这里删除指定天数之前的备份文件
作者: Batcher    时间: 2009-8-18 09:53

把代码保存成test.bat
双击运行之

BAT里面的语法和CMD里面的语法不不尽相同的
作者: nonfish    时间: 2009-8-18 10:08

谢谢啊,我先看看。
我就是存为bat的,可就是没办法实现,但我记得以前好像成功过。我同事说只要删除一个小地方就可以了,好像删除一个%就可以了,我也不清楚。




欢迎光临 批处理之家 (http://bbs.bathome.net/) Powered by Discuz! 7.2