【问题标题】:Deleting a folder out of all user directories从所有用户目录中删除文件夹
【发布时间】: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


【解决方案1】:
$users = Get-ChildItem C:\Users
foreach ($user in $users){
   $folder = "$($user.fullname)\AppData\Local\Microsoft_Corporation\*Harmony*"
     If (Test-Path $folder) {
          Remove-Item $folder -Recurse -Force -ErrorAction silentlycontinue -WhatIf
     }
}

$folder 包含一个字符串 - 路径。它不包含要使用的文件列表Where-Object Cmdlet。

另一种方式:

Get-ChildItem "C:\Users\*\AppData\Local\Microsoft_Corporation\*harmony*" -Directory | Remove-Item -WhatIf

【讨论】:

  • 就像插话并提到-Directory是在v3中引入的。备选:| { $_.PSIsContainer } |
【解决方案2】:

你为什么把 where-object 放在 " " 里面? powershell 将其读取为字符串

试试这个:

$users = Get-ChildItem C:\Users
foreach ($user in $users){
   $folder = "$($user.fullname)\AppData\Local\Microsoft_Corporation\"
   If (Test-Path $folder) {
   Get-ChildItem $folder -Recurse | Where-Object {$_.Name -like "*harm*"}|Remove-Item -Force -ErrorAction silentlycontinue
   }
}

【讨论】:

    猜你喜欢
    • 2010-11-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-20
    • 1970-01-01
    • 1970-01-01
    • 2015-09-02
    相关资源
    最近更新 更多