multithreading - 如何多线程 PowerShell Ping 脚本

标签 multithreading powershell ping

我最近完成了一个脚本来 ping 列表中的每台计算机/工作站并以一种很好的格式输出它。

有数千台计算机要 ping 下一个列表,因此需要一段时间才能正常运行。我如何能够多线程处理,以便在合理的时间范围内完成工作?

最佳答案

workflow Ping
{
  param($computers)

    foreach -parallel ($computer in $computers)
    {
        $status = Test-Connection -ComputerName $computer -Count 1 -Quiet

        if (!$status)
            { Write-Output "Could not ping $computer" }
    }
}

$computers = @(
    "wd1600023",
    "sleipnir"
)

Ping $computers

关于multithreading - 如何多线程 PowerShell Ping 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37954004/

相关文章:

java - 线程回调未调用。为什么?

powershell - 在多台远程机器上获取服务

powershell - 如何防止 PowerShell 窗口关闭以便我可以看到错误?

linux - ping + 如何最小化 ping 命令的时间

python - 在无限 while 期间写入文件

android - 在Android studio中ping本地IP

Python Server Client程序错误: "OSError: [WinError 10048]"

ios - 使用 GCD 和代码重用 : avoiding re-entrant code deadlock

c# - 我可以从主构造函数关闭程序吗?

powershell - 向 csv 文件添加条目会引发错误 :does not contain a method named 'op_Addition'