繁体   English   中英

如何使用PowerShell查找所有锁定的用户

[英]How to find all locked Users using PowerShell

在一个系统中,有多个用户登录。

我想知道哪个用户登录并锁定了系统。

我试图找到LogonUI.exe的可用性。 但我没有得到LogonUI.exe的正确用户名

$uname = $env:UserName
$procs = @()
$allProcs = @(Get-WmiObject win32_process)
foreach($proc in $allProcs)
{
    if($proc.getowner().user -eq $uname) {
         if($proc.ProcessName() -eq LogonUI) {
              "system locked"
         }
    }
}

我尝试过这种方式。 但是,即使用户锁定了系统,我也无法将其锁定。 因为它在检查用户名时失败。 大多数情况下,它是空白的。 有什么帮助吗?

从PowerShell 4开始,您可以按照https://docs.microsoft.com/en-us/powershell/module/microsoft.powershell.management/get-process使用Get-Process -IncludeUserName直接获取用户名。

您还可以检查此线程上的某些解决方案,也可以从会话管理器中获取更多直接状态: Powershell脚本以查看当前登录的用户(域和计算机)+状态(活动,空闲,离开)

我不确定您是在域中还是仅在本地计算机上工作。 但是,如果您应该尝试一下。

https://blogs.technet.microsoft.com/heyscriptingguy/2011/08/31/use-powershell-to-find-locked-out-user-accounts/

这是Microsoft脚本专家的帖子。 因此,如果幸运的话,这应该已经解决了您的问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM