【发布时间】:2017-12-27 14:44:40
【问题描述】:
我正在尝试为给定计算机上的所有用户从\AppData\Local\Microsoft_Corporation directory 中删除一个文件夹。我找到了一些可以为我完成此任务的 PowerShell 脚本,但这里的额外问题是每个用户的此文件夹名称略有不同。我要删除的文件夹名称如下所示 - harmony_Path_lzm5ceganmb1ihkqq2。它的文件夹名称中始终包含“和谐”一词,因此我正在尝试使用此关键字搜索任何文件夹并将其删除。
这是我目前的脚本:
$users = Get-ChildItem C:\Users
foreach ($user in $users){
$folder = "$($user.fullname)\AppData\Local\Microsoft_Corporation\*"
If (Test-Path $folder) {
Remove-Item $folder -Recurse -Force -ErrorAction silentlycontinue -WhatIf
}
}
这似乎可以很好地删除\AppData\Local\Microsoft_Corporation\ 中的每个文件夹,但是当我尝试使用Where-Object Cmdlet 搜索“和谐”关键字时。我无法让它正常工作。
$users = Get-ChildItem C:\Users
foreach ($user in $users){
$folder = "$($user.fullname)\AppData\Local\Microsoft_Corporation\* | Where-Object {$_.Name -like "*harm*"}"
If (Test-Path $folder) {
Remove-Item $folder -Recurse -Force -ErrorAction silentlycontinue -WhatIf
}
}
谁能帮我解决这个问题?
【问题讨论】:
-
你这样做解决了什么问题?
标签: powershell