batch-file - 如果超过 x 天,如何删除单个文件?
问题描述
我需要在启动程序之前删除一个文件,但只有在它超过一天时才应该这样做。
目前我总是在命令提示符窗口中执行:
del /f filepath
*run program*
我知道,有这个选项可以通过批处理对多个文件执行此操作:
ForFiles /p "path" /d -X /c "cmd /c del @file"
但是我只想对特定文件执行此操作,我是否必须使用 forfiles 或者是否有另一个更快的选项而无需迭代?
解决方案
这是您的代码:
forfiles /p "path" /m "file name" /d -Number of the days older mean the value of your X days /c "cmd /c del /f /q /a @file"
您的问题中的代码是硬编码的。的/s
切换forfiles
遍历给定路径的所有子文件夹。所以没有使用那个开关。并且/d
switch 的值会删除超过 30 天的文件,但您想要匿名 X 天。更改它们,您的代码将起作用。如需更多帮助,请启动 cmd 并键入forfiles /?
.
推荐阅读
- python - X[y==0,1] 操作在代码中做了什么?
- rust - Rust 函数返回包含参数引用的对象编译正常,但当 &self 包含在参数列表中时编译失败
- r - 当 tmap 工作正常时,如何解决 ggplot 中缺少变量的问题?
- python - 从具有索引的 numpy 数组中绘制随机样本
- driver - 操作系统开发 - 页面错误处理和磁盘驱动程序
- mysql - 在 maridb 查询中读取 python 变量
- sql - 如何使 ORDS 查询返回不带引号的 JSON_OBJECT?
- android - ACCESS_BACKGROUND_LOCATION 不适用于低于 Q (29) 的 Android 版本
- sql - 大数据条件聚合
- mysql - 在 MySQL Azure 中使用角色 - 管理员帐户的权限问题