当前位置:首页 > 技术文章 > 正文内容

forfiles命令,在Windows删除旧文件

zonemu2个月前 (08-19)技术文章32

在运行Windows的时候,也会出现一些不必要的文件,需要进行定期的删除,避免占用大量的磁盘空间。Windows的forfiles命令犹如Linux的find命令,一行命令就可以删除旧文件及文件夹。

Windows的批处理文件,一般后缀为bat或者cmd,在这里使用bat。

1) forfiles常用变量

在这里文件为C:\Apache\access.log。

变量内容输出结果
@file文件名(包括后缀)access.log
@fname文件名(不包括后缀)access
@ext后缀log
@path文件的完全路径C:\Apache\access.log
@relpath文件的相对路径.\access.log
@isdir如果是文件夹会返回TRUE(注意是大写),当文件时会返回FALSE。
@fsize文件大小(bytes单位)128
@fdate文件的更新日期2015/12/8
@ftime文件的更新时间15:50:20

forfiles命令其他参数可以使用forfiles /?命令进行查看。

2) 批处理删除文件夹

执行该bat文件的话,会删除D:\Apache\Log_Archives文件夹下面的7天之前的目录,包括目录下的文件。

cleanup.bat

@echo off

:: set folder path

set log_path=D:\Apache\Log_Archives

:: set min age of files and folders to delete

set max_days=7

:: remove sub directories from %log_path%

C:\Windows\System32\forfiles -p %log_path% -d -%max_days% -c "cmd /c IF @isdir == TRUE rd /S /Q @path"

3) 批处理删除文件

删除D:\Apache\Logs文件夹下的7天之前的所有文件。

DelFile.bat

set log_path=D:\Apache\Logs

:: remove files from %log_path%

forfiles -p %log_path% -m *.* -d -%max_days% -c "cmd /c del /q @path"

4) 常见问题

如果出现以下错误时,可以把forfiles命令指定为完全路径(FullPath),C:\Windows\System32\forfiles

'forfiles' 不是内部或外部命令,也不是可运行的程序或批处理文件。

5) 定期执行批处理

1) 依次点击「开始」-> 「管理工具」->「任务计划程序」。

2) 点击「创建基本任务」。

3) 填写任务的名称及描述之后,点击「下一步」。

4) 在这里使用默认的「每天」,并点击「下一步」。

5) 开始日期选择当天(在这里是2015/12/8),时间选择3:00:00(3点执行),每隔1天发生一次。以上设定是每天3天执行该任务。

6) 点击「下一步」。

7) 选择上面的创建的bat文件之后,点击「下一步」。

8) 点击「完成」。

相关文章

2024年10 大 Linux 桌面发行版推荐

年已过半,现在是探究 2024 年最流行的 Linux 发行版的最佳时机。Linux 是一个开源操作系统,构建在 Linux 内核上,并集成了 GNU shell 实用程序、桌面环境、应用程序、包管理...

Vue状态管理:Pinia完整指南(状态管理vuex)

概述本文专注于Vue的状态管理。我们将深入探讨如何使用Pinia来管理Vue应用程序的状态。状态管理使用props和emit进行父子组件间的数据协作虽然方便,但在以下情况下可能不够充分,数据传递往往会...

程序员项目经理如何调动组员积极性

#这个方法应该很适合程序员都说程序员是比较傲娇,有点小自负(有的是相当,那不叫自负,那是实力的体现好吗),略微呆萌,自尊心偏小强的一类族群。是吗?中招了吗?作为管理好几个组员,要完成一个大项目的项目经...

简析html5、html的13条区别(html5和html的突出优点)

html5的流行近一两年,在国内主要是移动端和html5游戏的发展,国外也是最近纷纷使用html5,如谷歌,全面的停止flash的广告的投放量,用html5取代之,那么html5较html的区别在哪里...

22《Vue 入门教程》VueRouter 路由嵌套

1. 前言本小节我们介绍如何嵌套使用 VueRouter。嵌套路由在日常的开发中非常常见,如何定义和使用嵌套路由是本节的重点。同学们在学完本节课程之后需要自己多尝试配置路由。2. 配置嵌套路由实际项目...

Vue Router 4 路由操作 - 路由导航

路由导航分为 声明式导航 和 编程式导航。通过 <router-link to="..."> 标签跳转的方式为声明式导航。通过 路由实例对象(router.push(......