You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PowerShell脚本开发需求:删除C:\Temp下含*.sr_processed文件的文件夹

解决方法:删除包含*.sr_processed文件的文件夹

你的原脚本确实只会删除匹配的文件,要删除它们所在的文件夹,我们需要先定位这些文件的父目录,去重后再执行删除操作。这里给你两种可靠的实现方式:

方式一:分步实现(更清晰易读)

# 1. 递归查找C:\Temp下所有*.sr_processed文件
$targetFiles = Get-ChildItem -Path C:\Temp -Include *.sr_processed -File -Recurse

# 2. 提取这些文件的父文件夹路径,并去重(避免重复删除同一个文件夹)
$foldersToDelete = $targetFiles | Select-Object -ExpandProperty DirectoryName -Unique

# 3. 遍历删除每个目标文件夹(添加-WhatIf参数可先预览删除操作,确认无误后再去掉)
$foldersToDelete | ForEach-Object {
    Remove-Item -Path $_ -Recurse -Force -WhatIf
}

方式二:单管道简化版

如果偏好更紧凑的写法,可以把步骤合并成单条管道:

Get-ChildItem -Path C:\Temp -Include *.sr_processed -File -Recurse |
    Select-Object -ExpandProperty DirectoryName -Unique |
    Remove-Item -Recurse -Force -WhatIf

关键细节说明:

  • -Unique:确保同一个文件夹即使存在多个.sr_processed文件,也只会被处理一次,避免重复操作
  • -Recurse:删除文件夹及其内部所有剩余内容(包括其他文件、子文件夹)
  • -Force:强制删除一些受保护或只读属性的文件夹/文件,若不需要可以移除该参数
  • -WhatIf:非常重要的测试参数,添加它不会实际执行删除,只会输出将要删除的内容。确认预览结果符合预期后,再删除这个参数执行真实操作

内容的提问来源于stack exchange,提问作者Edwin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.14 08:52:14