我正在尝试列出计算机上未隐藏的所有共享。但我就是无法让 where-object 子句起作用。知道如何过滤掉所有带有美元符号的共享名称吗?现在这没有过滤掉任何东西。
$ComputerName = "server"
$Shares = get-wmiobject -class Win32_share -ComputerName $ComputerName
$Shares | Where-Object -FilterScript { $_.Name.tostring() -notcontains "\`$" }
我知道这很简单,但我就是想不通。
编辑:如果有人想复制,这是我生成的脚本(更改名称以保护无辜者):
$ComputerNames = "server1","server2","server3","server4"
$Shares = invoke-command $ComputerNames { get-wmiobject -class Win32_share } -ErrorAction "SilentlyContinue"
$Shares | Where-Object -FilterScript { $_.Name.tostring() -notlike '*$*' }