2
我需要使用PowerShell腳本(v 1.0)確定訪問Windows XP(SP2)計算機上的共享文件夾的用戶/會話。這是使用計算機管理|顯示的信息系統工具|共享文件夾|會話。任何人都可以給我指導如何去做這件事?確定用戶使用PowerShell訪問共享文件夾
我猜這將需要一個WMI查詢,但我最初的在線搜索沒有透露什麼查詢的細節。
感謝,MagicAndi
我需要使用PowerShell腳本(v 1.0)確定訪問Windows XP(SP2)計算機上的共享文件夾的用戶/會話。這是使用計算機管理|顯示的信息系統工具|共享文件夾|會話。任何人都可以給我指導如何去做這件事?確定用戶使用PowerShell訪問共享文件夾
我猜這將需要一個WMI查詢,但我最初的在線搜索沒有透露什麼查詢的細節。
感謝,MagicAndi
我想出了下面的腳本:
$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#中做了類似的事情。
我喜歡這個解決方案 - 只要記住「交互式」使用,「網絡會話」就更快。 – 2009-11-25 19:32:55
@MagicAndi:Read-Host的存在導致腳本暫停。你對這條線的計劃是什麼? – Robin 2014-09-16 09:57:58
Rob,爲了回答你的問題......最後的讀主機在運行這個腳本時不會自動關閉控制檯窗口,以便你能看到輸出。這隻有在您通過雙擊它從資源管理器窗口運行腳本時纔是必需的。希望到目前爲止,你已經知道了這一點,但對於任何可能會遇到這個問題的人.....你去了。 – Dimesio 2015-06-03 20:59:02