使用 PowerShell 确定访问共享文件夹的用户

使用 PowerShell 确定访问共享文件夹的用户

我需要使用 PowerShell 脚本 (v 1.0) 确定访问 Windows XP (SP2) 计算机上共享文件夹的用户/会话。这是使用计算机管理 | 系统工具 | 共享文件夹 | 会话显示的信息。有人能给我指点一下如何操作吗?

我猜测它将需要 WMI 查询,但我最初的在线搜索并未显示查询详细信息。

谢谢,MagicAndi

答案1

我想出了以下脚本:

$computer = "LocalHost"
$namespace = "root\CIMV2"
$userSessions = Get-WmiObject -class Win32_ServerConnection -computername $computer -namespace $namespace

if($userSessions -ne $null)
{
    Write-Host "The following users are connected to your PC: "

    foreach ($userSession in $userSessions)
    {
        $userDetails = [string]::Format("User {0} from machine {1} on share: {2}", $userSession.UserName, $userSession.ComputerName, $userSession.ShareName)
        Write-Host $userDetails
    }    

    Read-Host
}

以下文章很有用:

与往常一样,如果您无法在 PowerShell 中找到执行此操作的方法,请查看是否有人在 C# 中做过类似的事情。

相关内容