在 windows 资源管理器可见的远程计算机上的 powershell 中查看共享

View shares in powershell on remote computer that are visible from windows explorer

在 windows 资源管理器中,我可以输入 \computer.domain\ 并查看该计算机上的某些共享。我的用户无权访问这些内容,但我仍然可以在 windows 资源管理器中看到它们。在 powershell 中,如果我开始输入那个,即 dir \computer.domain\,intellisense 会给我那些相同的份额作为选项来完成路径,但保留路径原样会导致 DNE 错误。此外,键入 Get-wmiobject win32_share -computername computer 将导致拒绝访问错误。如何访问智能感知和 windows 资源管理器可以显示的那些共享的名称?

据我所知,只有一种方法可以在不使用 WMI 的情况下枚举共享,这需要远程计算机上的权限,并且使用本机命令 "net view"

net view \computername

如果您想操纵这些结果并将其用于其他用途,则必须使用 PowerShell 进行一些解析。由于 "net view" 不是 PowerShell Cmdlet,而是本机 windows 控制台应用程序命令它 returns 文本,而不是像 powershell cmdlet 那样的对象。但它应该让你开始你正在做的事情。

我只知道 "net view" 实用程序,但它不会列出隐藏的共享(以 '$' 结尾的共享),尽管您可以使用 Get-Acl 指定它们的名称来检查它们是否存在,例如:

Get-Acl \192.168.0.1\admin$