我需要从文件中读取 IP 地址和子网掩码,并显示所有适当的 IP 地址及其状态。此命令可以显示地址列表:
New-Object System.Net.Networkinformation.Ping.send("ip.$_")
但它只需要 IP 地址。怎样才能让口罩也能用呢?
文件示例:
192.168.0.10
255.255.255.0
Warren Frame 基于 Shay Levy 和 Boe Prox 的工作编写了这个伟大的实用程序,标题为调用-Ping https://gallery.technet.microsoft.com/scriptcenter/Invoke-Ping-Test-in-b553242a。您可以提供一组 IP 地址,如下所示:
Invoke-Ping -ComputerName 192.186.0.1,192.168.0.2
马克·戈萨 https://gallery.technet.microsoft.com/scriptcenter/PowerShell-Subnet-db45ec74使用以下语法编写了一个实用程序来计算给定子网掩码的有效 IP:
Get-IPs -Subnets "10.0.2.0/24","10.0.4.0/24"
如果我们将两者结合起来...
invoke-ping -ComputerName (get-ips -Subnets "192.168.0.10/24")
这将返回该范围内所有计算机的 Pingable 状态。这对您来说应该是一个很好的起点。而且,Warren 已经完成了将 ping 分布到一系列 IP 的工作,这意味着您可以在大约 10 秒内 ping 通 1000 台 PC。
如果添加 -Quiet 到Invoke-Ping
,您将获得运行时有效(在线)IP 的列表。
192.168.0.1
192.168.0.11
192.168.0.12
192.168.0.13
192.168.0.15
192.168.0.16
192.168.0.18
192.168.0.21
192.168.0.22
192.168.0.9
它看起来是这样的:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)