set num=3 set suffix=log for /f "skip=%num% tokens=* delims=" %%i in ('dir /b/o-d *.%suffix%') do del /f/q "%%i"
前两行是指定保留文件的个数和指定的文件后缀
最后一行是,先通过dir /b/o-d 命令按照时间排序列出指定后缀的文件列表,然后用for循环,循环的时候跳过num个文件后执行del命令删除文件
tokens=* delims= 的含义是取消默认的分隔符,所以会把行上的内容照搬下来,但是会忽略行首的所有空格
del /f/q "%%i" 必须要有引号,否则遇见有空格的路径,del就没法删除了
只需要把该命令拷贝到记事本中,把txt改成bat后缀,然后放到要删除文件所在的文件夹中,就可以了
我个人不是很懂dos命令,这个命令是我研究了半天自己拼的一个命令,我自己测试用了几次,没啥问题,但是不能保证绝对没有问题,
因此,该代码只能做参考,不能直接拿来使用!
标签:文件,删除,后缀,命令,del,dos,%% From: https://www.cnblogs.com/luludongxu/p/16846882.html