在 AD 中,我们设置了主目录,它指向一个文件服务器,文件夹是他们的 [用户名]。我想知道谁使用 Powershell 通过计算机名称连接到这些主目录。
我输入 person [用户名] 然后它会显示哪些计算机连接到该文件夹。
我在 Get-ADuser 中查看了一下,但没有找到太多内容,并尝试寻找命令,但我可能查找错了。
谢谢
[编辑01]
我发现这Get-WmiObject Win32_serverConnection
会返回HomeDirectory
使用其用户名连接到的人。我使用的命令如下:
Get-WmiObject Win32_ServerConnection -ComputerName SERVER | where username -match "USER" | where sharename -like "home" | select username, sharename, computername | sort sharename | Format-Table -AutoSize
这将返回如下格式化的表格:
username sharename computername
-------- --------- ------------
USER home 123.456.789.01
USER home 123.456.789.02
现在我唯一的问题是,它没有恢复,ComputerName
而是恢复了 IP 地址。我可以手动 nslookup,它会恢复ComputerName
,但我如何将其集成到这个命令行中?
[编辑02]
foreach
我所做的是,将 IP 地址推送到数组中,然后使用以下命令行完成:
([System.Net.DNS]::GetHostByAddress($ipaddress)).HostName
这将返回计算机名称。
答案1
Get-ADUser -SearchBase "OU=Path,OU=To,OU=OrgUnit,DC=domain,DC=com" -Filter {HomeDirectory -like 'C:\*'} -Properties HomeDirectory
使用-filter
和-Properties
参数来包含HomeDirectory
属性。将{HomeDirectory -like 'C:\*'}
路径调整为您的有效位置,参数也一样-SearchBase
。