微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

windows cmd 批处理文件,用于 32 个 IP 的并行跟踪路由

如何解决windows cmd 批处理文件,用于 32 个 IP 的并行跟踪路由

我在文件 tracerouteiplistA.txt 中有 32 个 IP

在名为 tracerouteScriptA.bat 的批处理文件的 for/while 循环中,

我想跟踪所有路由并将结果存储在 traceA.txt 中

如果 10. 是可见的,我想在 traceresponseA.txt 中写入 0。如果 172. 可见,则为 1,否则如果请求超时或失败,我想写 2。

我目前的代码如下 --

$ pip install tweepy --user

解决方法

Powershell 解决方案:

#get all IP
$Result=Get-Content "c:\temp\tracerouteiplistA.txt" | foreach{

    #for every IP we do a traceroute
    Test-NetConnection $_ -TraceRoute | foreach{

    $Current=$_

    #one line by hop
    $_.TraceRoute | foreach{

            if ($_ -like "10.*")
            {
                $Analyse="0"
            }
            elseif ($_ -like "172.*")
            {
                $Analyse="1"
            }
            else
            {
               $Analyse="2"
            }

            #create an objet and send to output            
            [pscustomobject]@{
            IP=$Current.RemoteAddress
            HopIP=$_
            Analyse=$Analyse
            }
                                

         }

    }



} 

#result into file,we take the first result in priority order
$Result | sort Analyse | select Analyse -First 1 -ExpandProperty Analyse | Out-File "c:\temp\traceresponseA.txt"

#if you want look result
$Result

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。