FORFILES

https://blog.csdn.net/sandy9919/article/details/82932460

命令格式:


forfiles.exe /p "D:\备份" /s /m *.zip /d -7 /c "cmd /c del @path"


/p:指定目录


/s:递归搜索子目录


/m:搜索“*.zip”文件来删除,默认是“*.*”


/d:-7表示7天前的文件


/c:自行命令,后面双引号括起来的是删除文件命令

 

forfiles是一款windows平台的软件工具,其中选择文件并运行一个命令来操作文件。文件选择标准包括名称和上次修改日期。命令说明符支持一些特殊的语法选项。它可以直接在命令行中使用,也可以在批处理文件或其他脚本中使用。

该forfiles命令最初作为加载项提供在Windows NT 资源工具包中。它成为Windows Vista的标准实用程序,作为新管理功能的一部分。

用法

forfiles命令有几个命令行选项。如果没有给出选项或参数,它将输出当前目录中每个文件的名称。

开关 论据 含义
/ P 路径 用于搜索文件的目录(文件夹)。默认为当前目录。 不接受UNC路径(\\ machine \ share)。
/ M 搜索掩码 一个glob模式(通配符搜索)。仅选择文件名与模式匹配的文件。文件扩展名包含在文件名中; 不是路径(文件夹名称)。模式必须与整个名称匹配,或使用通配符。默认设置是匹配所有文件。
此选项把glob模式*.*和*不同。前者仅匹配名称中带有点的文件,而后者甚至匹配没有点或扩展名的文件。即使给定*.*模式,大多数DOS / Windows命令也会匹配没有扩展名的文件。

/ S (没有) 选择子目录中的匹配文件。默认情况下,仅搜索单个指定目录。
/C 命令 为每个匹配的文件执行给定的命令。命令字符串通常需要用双引号括起来。请参阅下面的命令字符串中的语法。默认命令是CMD /C ECHO @FILE,导致输出(显示)每个匹配文件的名称。
/ d 日期 根据上次修改日期选择文件。请参阅下面的日期语法。默认情况下,无论日期如何,都会选择文件。
/? (没有) 显示帮助消息(简要使用说明)。禁止文件搜索/命令执行。不得与任何其他开关一起使用。
命令语法

除非如下所述,否则命令字符串按给定的方式执行。

形式的序列0xFF,其中“0x”是文字,“FF”表示任何两位十六进制数,用相应的单字节值替换。这可用于嵌入非打印ASCII字符或扩展ASCII字符。

提供了几个变量,在命令中用作来自每个文件的值的占位符。从技术上讲,变量不是必需的,但如果每个文件的命令都不同,则必须使用变量。

变量 含义
@file 匹配项的名称,双引号。
@fname 匹配项的基名(没有文件扩展名),双引号。
@ext 文件扩展名,双引号,没有前导点。如果文件有多个扩展名,则只返回最后一个。如果文件没有扩展名,则返回带引号的空字符串。
@path 匹配项的完整路径,双引号,包括驱动器号和文件扩展名(如果有)。
@relpath 匹配项的路径,双引号和相对于起始目录(由/ P给出)。每个路径以点和反斜杠(.\)开头。
@isdir TRUE如果匹配项是目录,FALSE则计算文字字符串,否则。
@fsize 匹配项的大小,以字节为单位。目录报告大小为零。
@fdate 上次修改文件的日期,采用当前用户的本地化日期格式。
@ftime 上次修改文件的时间,采用当前用户的本地化时间格式。
日期语法

在给定日期参数的情况下,日期开关(/ D)根据上次修改日期选择文件。

date参数可以作为文字日期给出,格式为MM / DD / YYYY(不接受其他日期格式)。可替代地,日期参数可以被给定为一个数字,在这种情况下,它被认为是指在日龄时(即,天日期当前日期的前几天)。

如果date参数以减号( - )开头,则仅选择在给定日期或之前修改的文件(较旧的文件/先前修改过)。否则,仅选择在给定日期或之后修改的文件(较年轻的文件/稍后修改)。可以给出显式加号(+),但这是默认值。请注意,两种模式都在给定日期选择文件。无法仅在给定日期选择文件(也不在之前或之后)。

示例

要列出驱动器 C: 上的所有批处理文件,请键入:

forfiles /p "c:/" /s /m *.bat /c "cmd /c echo @file is a batch file"

要列出驱动器 C: 上的所有目录,请键入:

forfiles /p "c:/" /s /m *.* /c "cmd /c if @isdir==true echo @file is a directory"

要列出驱动器 C: 上存在时间多于 100 天的所有文件,请键入:

forfiles /p "c:/" /s /m *.* /d t-100 /c "cmd /c echo @file :date >= 100 days"

要列出驱动器 C: 上 1993 年 1 月 1 日以前创建的所有文件,而且对于日期早于 1993 年 1 月 1 日的文件显示“file is quite old!”,请键入:

forfiles /p "c:/" /s /m *.* /d t-01011993 /c "cmd /c echo @file is quite old!"

要按列格式列出驱动器 C: 上所有文件的扩展名,请键入:

forfiles /p "c:/" /s /m *.* /c "cmd /c echo extension of @file is 0x09@ext0x09" With:

要列出驱动器 C: 上的所有批处理文件,请键入:

forfiles /p "c:/" /s /m *.bat /c "cmd /c echo @file is a batch file"

要列出驱动器 C: 上的所有目录,请键入:

forfiles /p c:/ /s /m *.* /c "cmd /c if @isdir==true echo @file is a directory"

要列出驱动器 C: 上存在时间多于 100 天的所有文件,请键入:

forfiles /p c:/ /s /m *.* /d t-100 /c "cmd /c echo @file :date >= 100 days"

要列出驱动器 C: 上 1993 年 1 月 1 日以前创建的所有文件,而且对于日期早于 1993 年 1 月 1 日的文件显示“file is quite old!”,请键入:

forfiles /p c:/ /s /m *.* /d t-01011993 /c "cmd /c echo @file is quite old!"

要按列格式列出驱动器 C: 上所有文件的扩展名,请键入:

forfiles /p c:/ /s /m*.* /c "cmd /c echo extension of @file is 0x09@ext0x09"

删除D:\db_bak目录下20天之前的rar文件,请键入:

forfiles /p "D:\ufbak\db_bak" /s /m *.rar /d -20 /c "cmd /c del @path"
---------------------
作者:吥輕誩放棄
来源:CSDN
原文:https://blog.csdn.net/sandy9919/article/details/82932460
版权声明:本文为博主原创文章,转载请附上博文链接!

[转帖]FORFILES 的简单介绍。的更多相关文章

  1. [转帖]MyCat教程【简单介绍】

    MyCat教程[简单介绍] 2019-10-15 10:27:23 波波烤鸭 阅读数 618 版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明. ...

  2. yii2的权限管理系统RBAC简单介绍

    这里有几个概念 权限: 指用户是否可以执行哪些操作,如:编辑.发布.查看回帖 角色 比如:VIP用户组, 高级会员组,中级会员组,初级会员组 VIP用户组:发帖.回帖.删帖.浏览权限 高级会员组:发帖 ...

  3. Android发展简单介绍

    Android一词的本义指“机器人”,同一时候也是Google于2007年11月5日宣布的基于Linux平台的开源手机操作系统的名称,该平台由操作系统.中间件.用户界面和应用软件组成,号称是首个为移动 ...

  4. 【Facebook的UI开发框架React入门之九】button简单介绍(iOS平台)-goodmao

    --------------------------------------------------------------------------------------------------- ...

  5. [原创]关于mybatis中一级缓存和二级缓存的简单介绍

    关于mybatis中一级缓存和二级缓存的简单介绍 mybatis的一级缓存: MyBatis会在表示会话的SqlSession对象中建立一个简单的缓存,将每次查询到的结果结果缓存起来,当下次查询的时候 ...

  6. 利用Python进行数据分析(7) pandas基础: Series和DataFrame的简单介绍

    一.pandas 是什么 pandas 是基于 NumPy 的一个 Python 数据分析包,主要目的是为了数据分析.它提供了大量高级的数据结构和对数据处理的方法. pandas 有两个主要的数据结构 ...

  7. 利用Python进行数据分析(4) NumPy基础: ndarray简单介绍

    一.NumPy 是什么 NumPy 是 Python 科学计算的基础包,它专为进行严格的数字处理而产生.在之前的随笔里已有更加详细的介绍,这里不再赘述. 利用 Python 进行数据分析(一)简单介绍 ...

  8. angular1.x的简单介绍(二)

    首先还是要强调一下DI,DI(Denpendency Injection)伸手获得,主要解决模块间的耦合关系.那么模块是又什么组成的呢?在我看来,模块的最小单位是类,多个类的组合就是模块.关于在根模块 ...

  9. Linux的简单介绍和常用命令的介绍

    Linux的简单介绍和常用命令的介绍 本说明以Ubuntu系统为例 Ubuntu系统的安装自行百度,或者参考http://www.cnblogs.com/CoderJYF/p/6091068.html ...

随机推荐

  1. UVA12569-Planning mobile robot on Tree (EASY Version)(BFS+状态压缩)

    Problem UVA12569-Planning mobile robot on Tree (EASY Version) Accept:138  Submit:686 Time Limit: 300 ...

  2. 用于文本分类的多层注意力模型(Hierachical Attention Nerworks)

    论文来源:Hierarchical Attention Networks for Document Classification 1.概述 文本分类时NLP应用中最基本的任务,从之前的机器学习到现在基 ...

  3. redis单例模式写法

    <?php /**只看红色重点 * =========================================================== * ZW_Memory_Cache * ...

  4. Java hashCode() equals()总结

    1.hashCode的存在主要是用于查找的快捷性,如Hashtable,HashMap等,hashCode是用来在散列存储结构中确定对象的存储地址的: 2.如果两个对象相同,就是适用于equals(j ...

  5. spingMVC异步上传文件

    框架是个强大的东西,一般你能想到的,框架都会帮你做了,然后只需要会用就行了,spingmvc中有处理异步请求的机制,而且跟一般处理请求的方法差别不大,只是多了一个注解:spingmvc也可以将stri ...

  6. C# Oracle 时间字符串转时间类型

    C# 字符串转时间类型 yyyy-MM-dd HH:mm:ss  yyyy-MM-dd hh:mm:ss d 月中的某一天.一位数的日期没有前导零. dd 月中的某一天.一位数的日期有一个前导零. d ...

  7. net spider(python 网络爬虫)

    # -*- coding: utf-8 -*- import urllib2,cookielib from bs4 import BeautifulSoup url="http://www. ...

  8. java redis 分页查询数据

    package com.liying.tiger.test; import java.util.List; import org.springframework.context.Application ...

  9. C# socket实践 - 简易版FTP(Server & Client)

    写了个简易版的ftp(服务器和客户端),运行效果如下图: click download下载中的UI: 原理:模仿正规ftp方式,分成2个socket连接:文本命令socket.数据信道socket. ...

  10. Deno下一代Nodejs?Deno初体验

    前言 Ryan Dahl之父发布了新的项目Deno,很多IT媒体都使用了标题“下一代Nodejs”,首先我们看一下Deno的特性: 1.支持typescript (nodejs目前也支持). 2.无p ...