删除具有相同扩展名的批量文件,同时保留具有相同扩展名的文件

时间:2017-06-20 14:27:26

标签: powershell

<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react-dom.js"></script>
<script src="https://unpkg.com/react-router-dom@4.1.1/umd/react-router-dom.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/history/4.6.3/history.min.js"></script>
<div id="app"></div>

同一目录中有两个我不想删除的文件。我想删除除两个.txt文件以外的所有文件。它们需要保存在同一目录中。但是,其余的都是垃圾,可以删除。

2 个答案:

答案 0 :(得分:4)

您可以利用管道中的Where-Object来完成您要执行的操作。

Get-ChildItem "I:\TEMP_Dir_SSN\" |
  Where-Object { (($_.Name -notlike 'fullpath.txt') -and
                  ($_.Name -notlike 'SSN_FILES.txt')) } |
  Remove-Item

只需注意更简洁的阅读/写作,您可以使用内置别名GCIWhere

答案 1 :(得分:2)

我会使用Exclude参数来排除文件:

Get-ChildItem "I:\TEMP_Dir_SSN" -Exclude "fullpath.txt","SSN_FILES.txt" | Remove-Item