Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/batch-file/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Batch file 尝试使用Windows批处理脚本删除某个日期之前的文件,但要排除具有某个名称的文件夹_Batch File_Directory - Fatal编程技术网

Batch file 尝试使用Windows批处理脚本删除某个日期之前的文件,但要排除具有某个名称的文件夹

Batch file 尝试使用Windows批处理脚本删除某个日期之前的文件,但要排除具有某个名称的文件夹,batch-file,directory,Batch File,Directory,因此,我想做的是使用批处理脚本删除服务器上数据目录中的文件(我已经创建了存档副本,现在只需删除文件)。问题是我们使用的是漫游配置文件,如果我在数据目录上运行它,它将通过并删除所有需要但不经常更改的ini和应用程序文件 forfiles -s -m *.* /D -01/01/2014 /C "cmd /c del @path" 如果可能,我希望运行这样的脚本,但不包括任何包含profile或profile.V2的文件夹及其下的任何内容 我的目录结构如下所示 C:/Data/Users/srod

因此,我想做的是使用批处理脚本删除服务器上数据目录中的文件(我已经创建了存档副本,现在只需删除文件)。问题是我们使用的是漫游配置文件,如果我在数据目录上运行它,它将通过并删除所有需要但不经常更改的ini和应用程序文件

forfiles -s -m *.* /D -01/01/2014 /C "cmd /c del @path"
如果可能,我希望运行这样的脚本,但不包括任何包含profile或profile.V2的文件夹及其下的任何内容

我的目录结构如下所示

C:/Data/Users/srodgers/profile/Desktop

-或-

C:/Data/Users/ssmith/profile.V2/Desktop


我想从数据的根目录运行脚本,测试并删除
echo
(它当前只显示del命令)以准确地删除文件。
在有限的测试中,它运行良好

@echo off
forfiles -s -m *.* /D -01/01/2014 /C "cmd /c echo @path |find /i /v 0x22\profile\0x22|find /i /v 0x22\profile.V2\0x22 >nul && echo del @path"
pause

你不使用PowerShell有什么原因吗?我不知道为什么人们会投票结束这样的问题:它提供了回答问题所需的所有细节。甚至还有提供的代码。John,我使用powershell没有问题,但我也不知道在powershell中使用它的好方法。不管怎样,foxdrive都能解决这个问题。再次感谢foxdrive!天哪,你真是个天才!那会节省我很多时间!在我有限的测试中,它对我来说效果很好。即使我使用它,我也会有备份。