从巨大的文本文件中找到IP和用户名

时间:2019-05-26 17:15:34

标签: powershell

#NAM=127.0.0.1 #PRT="HomeServer:Ping Test"#HID=100#DEP=-1#DPS=5#GRP=G00000027#REM=""#UID=6038#ACT=T#LOL=F#FOL=F#VIA="#DE=__LAN__#KA=F#"#LDEFUP=5/16/2019 10:44:39 PM#LDEWHO=#TPL=F#MUT=#MFR=#RUSE=F...

1 个答案:

答案 0 :(得分:0)

我看到您正在尝试学习Powershell,所以我会为您提供帮助。下次请提供一个有效的问题。

您要尝试使用正则表达式搜索Ips。

Powershell正在使用.Net Framework。调用课程就像使用[Class Here]

一样容易

因此,我们将调用regex类,然后在字符串中搜索IP地址。

在这种情况下,我编写了一个快速功能来完成此任务

function Find-IPAddresses([string]$Data){
    [regex]::Matches($File, "(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)") | %{
        $_.value
    }
}

$Info = @"
#NAM=127.0.0.1 #PRT="HomeServer:Ping Test"#HID=100#DEP=-1#DPS=5#GRP=G00000027#REM=""#UID=6038#ACT=T#LOL=F#FOL=F#VIA="#DE=__LAN__#KA=F#"#LDEFUP=5/16/2019 10:44:39 PM#LDEWHO=#TPL=F#MUT=#MFR=#RUSE=F..
"@

Find-IPAddresses -Data $Info

它将返回127.0.0.1