powershell - 列出本地用户及其组

标签 powershell user-accounts

我想要一份关于所有本地用户及其相关组(用户、高级用户、管理员等)的报告。

我以这种方式获取用户:

$adsi = [ADSI]"WinNT://."
$adsi.psbase.children | where {$_.psbase.schemaClassName -match "user"} | select @{n="Name";e={$_.name}}

但我不知道如何检索他们的组。提前致谢。

最佳答案

$adsi = [ADSI]"WinNT://$env:COMPUTERNAME"
$adsi.Children | where {$_.SchemaClassName -eq 'user'} | Foreach-Object {
    $groups = $_.Groups() | Foreach-Object {$_.GetType().InvokeMember("Name", 'GetProperty', $null, $_, $null)}
    $_ | Select-Object @{n='UserName';e={$_.Name}},@{n='Groups';e={$groups -join ';'}}
}

关于powershell - 列出本地用户及其组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4548476/

相关文章:

powershell - 如何使用 Powershell 跨卷移动文件/文件夹?

powershell - 在 Powershell 中使用自定义用户文件夹创建本地用户

sql-server - 尝试删除数据库用户帐户架构时出错

php - 最简单、最小的PHP账户系统

powershell - 如何在Powershell脚本结尾自动停止所有启动的进程

powershell - Powershell使用System.Windows.Forms.SaveFileDialog将目录位置选择为变量

powershell - 如何在 mcr.microsoft.com/powershell 镜像之外的 docker 容器中安装 powershell 模块?

powershell - 我可以让 powershell 选项卡完整显示所有选项,而不是选择一个特定的选项吗?

node.js - Node : How to change keys stored in LevelDB for accounts using the Accountdown module