一声令下格式:

forfiles命令批处理删除过期文件,forfiles批处理

一声令下格式:

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

/p:内定目录

/s:递归搜索子目录

/m:搜索“*.zip”文件来删除,暗中同意是“*.*”

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

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

命令格式: forfiles.exe /p “D:\备份” /s /m *.zip /d -7 /c “cmd /c del
@path” /p:钦命目录 /s:递归搜索子…

bat使用forfiles自动批量删减过期文件,forfiles命令批处理删除过期文件。指令格式:

ftp服务器用于保存备份文件,可是也不须要每一天的数码都留着,于是乎为了考虑节省硬盘空间,就亟须删除一些老文件,只要保存方今一周大概半年的就能够了

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

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

windows自带了二个批量刨除的次序,叫做forfiles,XP里一般没有,博文最上面附件能够下载

/p:内定目录

/p:钦点目录

首先说一下自家的使用吧,ftp服务器端天天备份数据文件后,只想保留近来两周的文本

/s:递归搜索子目录

/s:递归搜索子目录

编制2个bat文件,内容如下

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

/m:搜索“*.zip”文件来删除,暗中同意是“*.*”

写道

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

/d:-7意味着7天前的公文

@echo off
rem write to log
set filename=deletefile.log
echo -------------------Delete Expired Log Files------------------------- >>%filename%
echo Start >>%filename%
echo (%date% %time%) >>%filename%
echo Delete the expired log files in 目标目录路径1, Please wait... >>%filename%
forfiles.exe /p "D:\Kugou" /m *.tar /d -14 /c "cmd /c del @path"
echo End >>%filename%
echo (%date% %time%) >>%filename%

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

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

根本命令就这一条了:forfiles.exe /p “D:\Kugou” /m *.tar /d -14 /c “cmd
/c del @path”
这条命令的情致正是,搜索D:/Kugou目录下的即兴后缀名为tar的文书,查看其日期属性是不是为14天在此之前的(-14意味此前,+14表示之后),然后实施删除命令
一起头一向在纠结那日子格式是怎么弄的,是否forfiles是通过匹配文件名来删除的,结果平昔在改文件名的日子显示格式,后来才发现偶智力商数如此低下,人家forfiles是windows自带的,尼玛显然能够智能的协作文件日期属性啊。
故而说,只要那个文件的日子属性是14天之前的,就会被上述脚本删除。
 
接下来在丰裕义务布置。。。
 
下边帖一下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”作为第1个参数,在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: 上1992 年1 月1 日以前创制的具有文件,而且对于日期早于一九九四年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: 上壹玖玖伍 年1 月1 日此前创造的拥有文件,而且对于日期早于一九九五年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”

批处理命令之forFiles.exe(32/x64)
下载://www.jb51.net/softs/498793.html

相关文章