关于windows下自带的forfile批量删除文件bat命令
最近在开发的过程中,为了节省资源,需要用到windows下批量删除文件的批处理命令,也就是bat
主要内容:
forfiles /p "E:\pictures" /m * /d -1 /c "cmd /c del /Q @file"
大致意思就是删除E:\pictures目录以及其子目录下的修改时间为一天前的文件(此处用了通配符适配所有文件)
详细的说明 引用来此这里:
http://www.jb51.net/article/93970.htm
下面帖一下forfiles的参数用法
Forfiles
从文件夹或树中选择要进行批处理的文件。
语法
forfiles [/p Path ] [/m SearchMask ] [/s ] [/c Command ] [/d [{+ | - }] [{MM / DD / YYYY | DD }]]
参数
/p Path
指定Path ,表明要从哪里开始搜索。默认的文件夹是当前工作目录,该目录通过键入句号(.) 指定。
/m SearchMask
按照SearchMask 搜索文件。默认的SearchMask 是*.* 。
/s
指示forfiles 在子目录中搜索。
/c Command
在每个文件上运行指定的Command 。带有空格的命令字符串必须用引号括起来。默认的Command 是"cmd /c echo @file" 。
/d [{+ | - }] [{MM / DD / YYYY | DD }]
选择日期大于或等于(+ )(或者小于或等于(- ))指定日期的文件,其中MM / DD / YYYY 是指定的日期,DD 是当前日期减去DD 天。如果未指定+ 或- ,则使用+ 。DD 的有效范围是0 - 32768。
/?
在命令提示符下显示帮助。
注释
• Forfiles 最常用于批处理文件中。
• Forfiles /s 与dir /s 类似。
• 下表列出了可在/c Command 命令字符串中使用的变量。
变量 描述
@file
文件名
@fname
无扩展名的文件名
@ext
文件扩展名
@path
文件的完整路径
@relpath
文件的相对路径
@isdir
如果文件类型是目录,则计算值为TRUE,否则值为FALSE
@fsize
用字节表示的文件大小
@fdate
文件中上次修改的日期戳
@ftime
文件中上次修改的时间戳
• 使用forfiles ,可以在多个文件上运行命令或将参数传递给多个文件。例如,可以在树中带有*.txt 扩展名的所有文件上运行TYPE 命令。或者,可以用文件名“Myinput.txt”作为第一个参数,在C:/ 驱动器上执行每个批处理文件(*.bat)。
• 通过使用forfiles ,可以执行下列任何操作:
• 使用/d 按照绝对或相对日期选择文件。
• 使用诸如@fsize(文件大小)和@fdate(文件日期)这样的变量构建文件的存档树。
• 使用@isdir 变量区分文件和目录。
• 通过在命令行中包含特殊字符和使用十六进制代码0x HH 环绕字符来格式化输出内容。
• Forfiles 通过在旨在仅处理单个文件的工具上执行“循环子目录”标记来发挥作用。
示例
要列出驱动器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*.* /dt-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*.* /dt-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"
关于windows下自带的forfile批量删除文件bat命令的更多相关文章
- windows下运行的linux服务器批量管理工具(带UI界面)
产生背景: 由于做服务器运维方面的工作,需要一人对近千台LINUX服务器进行统一集中的管理,如同时批量对LINUX服务器执行相关的指令.同时批量对LINUX服务器upload程序包.同时批量对LINU ...
- EOFError: Compressed file ended before the end-of-stream marker was reached解决办法(在Windows下查看已下载的MNIST数据文件)
出现这个问题的原因是因为文件下载到一半就中断了,解决办法是删除datasets中下载到一半的数据包. 下面以我遇到的问题为例: 我下载数据下载到最后一个包就没有反应了,于是我强制终止了运行,可能是因为 ...
- ( 转)Ubuntu下创建、重命名、删除文件及文件夹,强制清空回收站方法
Ubuntu下创建.重命名.删除文件及文件夹,强制清空回收站方法 mkdir 目录名 ——创建一个目录 rmdir 空目录名 ——删除一个空目录 rm 文件名 文件名 ——删除一个文件或多个文件 rm ...
- git 批量删除文件夹和文件
git 批量删除文件夹和文件 硬盘删除文件后,执行$ git status 会提示你仍然需要$ git rm <文件> 此时如果是要删除大批量文件,这么一个一个命令下去不得累死人啊 ...
- Git 时光穿梭鸡 删除文件 以及批量删除文件
先添加一个新文件test.txt到Git并且提交: 一般情况下,你通常直接在文件管理器中把没用的文件删了,或者用rm命令删了 $ rm test.txt 这个时候,Git知道你删除了文件, 因此,工作 ...
- Linux基础教程 linux系统中的批量删除文件与空文件删除的命令介绍
linux下面删除文件或者目录命令rm(remove): 兄弟连Linux培训 功能说明:删除文件或目录. 语 法:rm[-dfirv][--help][--version][文件或目录...] 补充 ...
- linux 批量删除文件
来源;https://www.cnblogs.com/sinpo/p/7106998.html linux下批量删除文件 1. 在linux批量删除多级目录下同一格式的文件,可采用find + e ...
- Linux 递归批量删除文件夹或文件的命令
笔者有一次Linux服务器上的网站被别人在每一个文件夹下恶意注入了目录和文件,由于项目的目录太多,手动删除费时费力,最后用Linux的命令批量删除了注入内容.相关命令介绍如下: 递归批量删除文件夹: ...
- Linux命令行批量删除文件(目录)
快速-批量删除文件或目录 1-1.快速删除大文件夹(注意目录后的结束符'/')(对于含有海量文件的目录,不能直接rm -rf删除,这样效率很慢:) rsync -a --delete blank/ t ...
随机推荐
- selenium c# 的注意事项
http://chromedriver.storage.googleapis.com/index.html chromedriver的下载地址http://selenium-release.stora ...
- ubuntu 安装mysql及目录位置
安装 sudo apt-get install MySQL-server mysql-client 查看安装端口情况 sudo netstat -tap | grep mysql 配置文件位置 sud ...
- 只安装自己需要的Office2016组件的方法
转自:https://www.ithome.com/html/office/178814.htm http://www.orsoon.com/news/184524.html
- 【Bzoj4555】【Luogu P4091】求和(NTT)
题面 Bzoj Luogu 题解 先来颓柿子 $$ \sum_{i=0}^n\sum_{j=0}^iS(i,j)2^jj! \\ =\sum_{j=0}^n2^jj!\sum_{i=0}^nS(i,j ...
- 【贪心】hdu5969 最大的位或
对于右端点r和左端点l,考虑他们的二进制位从高到低,直到第一位不同的为止. 更高的都取成相同的,更低的都取成1. 比如 101011110001 101011101001 101011111111 # ...
- 【数论】【中国剩余定理】poj1006 生理周期
CRT用于求解一元线性同余方程组(模数互质),实际上模数不互质我们也可以解决,在之前的某篇文章里提过.如下 http://www.cnblogs.com/autsky-jadek/p/6596010. ...
- hibernate双向ManyToMany映射
工作需要一个双向多对多映射,照着李刚的书做了映射,碰到了一些问题,现就问题及解决方案进行总结归纳. 1.首先奉上最初代码 Person5.java @Entity @Table(name = &quo ...
- Springcloud中的region和zone的使用
一.背景 用户量比较大或者用户地理位置分布范围很广的项目,一般都会有多个机房.这个时候如果上线springCloud服务的话,我们希望一个机房内的服务优先调用同一个机房内的服务 ,当同一个机房的服务不 ...
- 十二. 网络与数据库编程1.IP地址和InetAddress类
Java语言的优势之一是Java程序能访问网络资源.Java提供一系列的类支持Java程序访问网络资源. TCP/IP协议和IP地址 为了进行网络通信,通信双方必须遵守通信协议.目前最广泛使用的是TC ...
- js 封装的自动创建表格的相关操作
因为要做一个动态输入的表格,现在积累一下资料,在网上找了一些资料,经过总结是使用更加方便些,谁有更好的插件和封装的东西,请大家分享一下. <script type="text/java ...