2016-07-27 82 views
-5

我想在SQL Server服务器中创建一个Purgejob,删除15天以前的.txt文件。Powershell脚本删除15天旧的.txt文件

Get-ChildItem –Path "D:\ABC\Project" -include *.txt –Recurse | Where-Object{$_.CreationTime –lt (Get-Date).AddDays(-15)} | Remove-Item 

通过运行此查询它成功删除项目文件夹内的文件.txt,但它也删除subfolder .txt文件,这是该项目文件夹内。我不想删除这些文件。我想要的只是删除项目文件夹内的.txt文件,而不是在项目文件夹的子文件夹中。

+0

_“但不是在子文件夹” _比你为什么用'-recurse'标志? O_o如果你打算说_“否则'-include'不起作用”_你应该阅读这个主题:http://stackoverflow.com/questions/28600923/difference-between-include-and-filter-in- get-childitem – n01d

回答

-1

取出递归和刚刚在主文件夹搜索:

Get-ChildItem –Path "D:\ABC\Project\*.txt" | Where-Object{$_.CreationTime –lt (Get-Date).AddDays(-15)} | Remove-Item 
+0

谢谢我要用你的建议来测试这个 – VamRock