所以这就是我要做的...我想运行一个脚本,枚举正在侦听端口443并导出这些IP列表的系统上的所有本地IP。
这是我到目前为止所拥有的:
Get-WmiObject -Class Win32_NetworkAdapterConfiguration -Filter IPEnabled=TRUE -ComputerName . | Format-Table -Property IPAddress
然而,输出如下:
IPAddress
---------
{10.206.147.139, 10.206.147.138, 10.206.147.137, 10.206.147.136...}
{172.18.4.24}
如何以完整格式获取此列表(不使用“...”截断)。此外,任何删除括号的方法,所以我只有一个逗号分隔列表?我想我可以从那里处理它。一如既往,谢谢!
答案 0 :(得分:0)
您可以尝试使用.Net套接字连接到端口443:
Get-WmiObject -Class Win32_NetworkAdapterConfiguration -Filter 'IPEnabled=TRUE' | Select -ExpandProperty IPAddress | % {
$Socket = New-Object Net.Sockets.TcpClient
$Socket.Connect($_, 443)
If ($Socket.Connected) {
$Socket.Close()
Write-host "$port open on $_"
}
}
答案 1 :(得分:0)
所以我想出来了......
gwmi Win32_NetworkAdapterConfiguration |
Where { $_.IPAddress } | # filter the objects where an address actually exists
Select -Expand IPAddress | # retrieve only the property *value*
Where { $_ -like '10.*.*' }