微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

适用于所有AD用户的Powershell删除

如何解决适用于所有AD用户的Powershell删除

我正在尝试删除我们公司所有设备上的文件。我正在尝试获取计算机名列表,然后再获取用户名列表。这是我到目前为止创建的。我们已经按照用户的名字缩写来组织用户,这就是为什么我只保留前三个字符的原因。在这种情况下,我只是尝试查看每个用户的路径是否存在。

我不确定这是执行此操作的正确方法还是应该在“用户目录路径添加内容。任何帮助或建议,将不胜感激。谢谢!

$ComputerList = (Get-ADComputer -Filter *).name
$ComputerName.Substring(0,3) = (Get-ADComputer -Filter *).name
Foreach ($Computer in $ComputerList)
{
$checkpath = 'C:\Users\ \AppData\Local\Microsoft\Edge\User Data\Default\Login Data'
Test-Path -Path $checkpath
}

解决方法

我会在每台设备上使用Get-ChildItem,因此它将仅找到实际登录该设备的用户。然后,您可以使用每个ChildItem的.fullname来获取完整路径,例如“ C:\ Users \ username”

Foreach ($Computer in $ComputerList)
{

    $userfolders = get-childitem C:\users\
    foreach ($user in $userfolders) {
        $path = $user.fullname
        test-path -Path "$path\AppData\Local\Microsoft\Edge\User Data\Default\Login Data"
    }

}

这将遍历列表中的每台计算机,找到每台计算机上存在的用户文件夹,然后测试每个用户的路径。

编辑:思路不清晰... get-childitem的路径必须像这样:

$userfolders = get-childitem "\\$Computer\C$\users\"

否则,它将继续反复检查您自己计算机的C:\驱动器

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。