电源外壳; 通过 Get-LocalGroupMember 从计算机中删除用户

乔迪·范·迪斯

我正在尝试Users从计算机中删除组中NT Authority帐户以外的所有用户我想从组用户中获取用户列表,并使用该列表从计算机中删除配置文件。

我不是 PowerShell 专家,所以这不是我的强项。

$users = Get-LocalGroupMember Users
ForEach ($user in $users) {
     Remove-LocalUser -Name $user
}

只有来自的名称Get-LocalGroupMember似乎与Remove-LocalUser要删除的内容不匹配,有什么解决方案吗?

西蒙斯

如果运行,Get-LocalGroupMember Users | fl *您可以看到 cmdlet 返回的所有属性。

PS C:\WINDOWS\system32> Get-LocalGroupMember Users | fl *

Name            : NT-AUTORITÄT\Authentifizierte Benutzer
SID             : S-1-5-11
PrincipalSource : Unknown
ObjectClass     : Gruppe

Name            : NT-AUTORITÄT\INTERAKTIV
SID             : S-1-5-4
PrincipalSource : Unknown
ObjectClass     : Gruppe

Name            : SimonS\abctest
SID             : S-1-5-21-3159913292-2406416548-3156803696-1008
PrincipalSource : Local
ObjectClass     : Benutzer

如果您运行,Get-Help Remove-LocalUser您可以在语法部分看到,有一个 ParameterSet 接受SID,这符合我们的需要,因为我们在返回中得到了它。

PS C:\WINDOWS\system32> Get-Help Remove-LocalUser
    
SYNTAX
    Remove-LocalUser [-InputObject] <LocalUser[]> [-Confirm] [-WhatIf] [<CommonParameters>]
    
    Remove-LocalUser [-Name] <String[]> [-Confirm] [-WhatIf] [<CommonParameters>]
    
    Remove-LocalUser [-SID] <SecurityIdentifier[]> [-Confirm] [-WhatIf] [<CommonParameters>]

这意味着我们可以获取Get-LocalGroupMember返回的 SID,并将其用于Remove-LocalUser

所以这应该可以解决问题(在提升的 PowerShell 中运行它):

Get-LocalGroupMember Users | Where { $_.PrincipalSource -eq 'Local' } | Foreach { Remove-LocalUser -SID $_.SID }

如您所见,我Where-Object在上面的命令中有一个这应该确保您只删除本地用户,因此NT-Authority不应删除这些用户。无论如何,我不认为您甚至可以轻松删除它们。

至于为什么它不适用于 Name 属性:Get-LocalGroupMember似乎以这种格式返回 NameComputer\UserNameRemove-LocalUser似乎只接受该格式UserName

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

<position>:方法调用中缺少')'。- 电源外壳

来自分类Dev

电源外壳。合并数组中对象的属性

来自分类Dev

如何在台式计算机中安装不带外壳的SSD驱动器?

来自分类Dev

通过PsExec在远程计算机中执行批处理文件

来自分类Dev

Get-LocalGroupMember为管理员组生成错误

来自分类Dev

电源外壳。根据文件中的字符串写出行

来自分类Dev

无法在函数中调用管道属性。电源外壳

来自分类Dev

电源外壳。增加CSV文件或数组中的值

来自分类Dev

电源外壳。根据文件中的字符串写出行

来自分类Dev

在电源外壳中逐行访问内容os变量

来自分类Dev

如何通过按电源按钮安全地关闭计算机?

来自分类Dev

如何将通过Web应用程序从iPhone捕获的图像保存到计算机中的位置

来自分类Dev

如何通过ssh从远程计算机中的文件将文件内容复制到本地剪贴板

来自分类Dev

如何通过cmd正确传输。新计算机中的行PGP密钥[例如Launchpad OpenPGP密钥]

来自分类Dev

通过注释排列如何在我的计算机中排列驱动器?

来自分类Dev

在远程Linux机器上与nohup一起运行的高斯在退出外壳程序之前关闭本地计算机的电源时被杀死

来自分类Dev

无法在通过Direct Connect VPN连接的计算机上运行Get-WmiObject

来自分类Dev

通过计算机上的策略禁用用户安装

来自分类Dev

通过用户名获取计算机名

来自分类Dev

是否将用户显示名称分配给索引?电源外壳

来自分类Dev

在Jenkins服务器中使用Selenium和Ruby进行的黄瓜测试失败,但在本地计算机中通过

来自分类Dev

复制和重命名文件名中的日期 + 7 天。(电源外壳)

来自分类Dev

从电源外壳打印文本

来自分类Dev

如何删除计算机中的“文件夹”

来自分类Dev

如何从计算机中删除XFCE?

来自分类Dev

如何从计算机中删除主题火炬?

来自分类Dev

如何从计算机中删除XFCE?

来自分类Dev

有没有办法让Get-Process Cmdlet仅输出进程名称?[电源外壳]

来自分类Dev

通过CMD中的远程计算机发送Enter键

Related 相关文章

  1. 1

    <position>:方法调用中缺少')'。- 电源外壳

  2. 2

    电源外壳。合并数组中对象的属性

  3. 3

    如何在台式计算机中安装不带外壳的SSD驱动器?

  4. 4

    通过PsExec在远程计算机中执行批处理文件

  5. 5

    Get-LocalGroupMember为管理员组生成错误

  6. 6

    电源外壳。根据文件中的字符串写出行

  7. 7

    无法在函数中调用管道属性。电源外壳

  8. 8

    电源外壳。增加CSV文件或数组中的值

  9. 9

    电源外壳。根据文件中的字符串写出行

  10. 10

    在电源外壳中逐行访问内容os变量

  11. 11

    如何通过按电源按钮安全地关闭计算机?

  12. 12

    如何将通过Web应用程序从iPhone捕获的图像保存到计算机中的位置

  13. 13

    如何通过ssh从远程计算机中的文件将文件内容复制到本地剪贴板

  14. 14

    如何通过cmd正确传输。新计算机中的行PGP密钥[例如Launchpad OpenPGP密钥]

  15. 15

    通过注释排列如何在我的计算机中排列驱动器?

  16. 16

    在远程Linux机器上与nohup一起运行的高斯在退出外壳程序之前关闭本地计算机的电源时被杀死

  17. 17

    无法在通过Direct Connect VPN连接的计算机上运行Get-WmiObject

  18. 18

    通过计算机上的策略禁用用户安装

  19. 19

    通过用户名获取计算机名

  20. 20

    是否将用户显示名称分配给索引?电源外壳

  21. 21

    在Jenkins服务器中使用Selenium和Ruby进行的黄瓜测试失败,但在本地计算机中通过

  22. 22

    复制和重命名文件名中的日期 + 7 天。(电源外壳)

  23. 23

    从电源外壳打印文本

  24. 24

    如何删除计算机中的“文件夹”

  25. 25

    如何从计算机中删除XFCE?

  26. 26

    如何从计算机中删除主题火炬?

  27. 27

    如何从计算机中删除XFCE?

  28. 28

    有没有办法让Get-Process Cmdlet仅输出进程名称?[电源外壳]

  29. 29

    通过CMD中的远程计算机发送Enter键

热门标签

归档