powershell - 我需要在网络共享上找到一个文件夹

标签 powershell

当名为 BlueMountain 的文件夹可以嵌套在我的用户主文件夹中的任何位置时,如何找到该文件夹​​

\\Server\Users\<personsname>\

最终我想删除该文件夹,但只是为了安全起见。 BlueMountain 文件夹必须具有以下子文件夹之一

Certs
Config
Macros
Scripts
Spool
Traces
Transfer

这就是我目前所拥有的

Get-ChildItem -Path \\Server\Users -Recurse -Directory -Filter $_.FOLDERNAME | ForEach-Object {
        If $_.FullName --eq "BlueMountain" {

        }

    }

最佳答案

您可以使用-recurse 递归地查找路径中的最后一个内容。所以这个:

Get-ChildItem \\server\Users\BlueMountain -recurse

将在“\server\Users”的所有子文件夹中查找名为“BlueMountain”的任何内容。然后您只需确保它包含您的文件夹之一。

$SubFolders = 'Certs','Config','Macros','Scripts','Spool','Traces','Transfer'
Get-ChildItem \\server\Users\BlueMountain -recurse | Where{Get-ChildItem "$($_.FullName)\*" -Include $SubFolders}

这应该仅列出在\server\Users 中递归找到的包含指定子文件夹之一的 BlueMountain 文件夹。然后您可以将其通过管道传输到 Remove-Item -force 并收工。或者,如果您想跟踪事物,请将其传送到 tee-object,然后传送到 remove-item

关于powershell - 我需要在网络共享上找到一个文件夹,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44660759/

相关文章:

mysql - 修复 MySQL 转储中的错误编码字符

powershell - 存在另一个参数时需要 PowerShell 中的参数

powershell - 为什么我的 Switch 语句提示用户输入时没有正确退出?

windows - 未找到内置 DSC 资源

python - 使用 Python 的 PowerShell 中的 Unicode? Windows 中的替代 shell?

powershell - 无法将对象转换为哈希表

PowerShell 管道迭代

linq - 与 LINQ 的 All() 等效的 PowerShell 是什么?

regex - PowerShell 字符串匹配和管道字符

powershell - 如何使用 PowerShell 从任务计划程序中删除文件夹?