grâce à la lecturesélectionnez dernières lignes dans le texte analysé
im travaillant dans un petit script, qui lit une sortie de txt et analyser les informations,
ce sont les informations à utiliser comme exemple:
Hostname:
xxxx1-CS0,8.1.9-184
Network:
IPv4 Address = 1.1.1.1.1.1
IPv4 Netmask = 1.1.1.1.1.4
IPv4 Gateway = 1.1.1.1.1.5
DNS Servers = 1.1.1.1.1.1,1.1.1.1.1.12
Hostname:
xxxx2,7.1.80-7
Network:
IPv4 Address = 2.2.2.2.1
IPv4 Netmask = 2.2.2.2.3
IPv4 Gateway = 2.2.2.2.4
DNS Servers = 2.2.2.2.2,2.2.2.2.3
Hostname:
xxxxx3,8.1.9-184
Network:
IPv4 Address = 3.3.3.3.3.1
IPv4 Netmask = 3.3.3.3.3.2
IPv4 Gateway = 3.3.3.3.3.5
DNS Servers = 3.3.3.3.3.3,3.3.3.3.3.4
Hostname:
xxxx4,8.1.9-184
Network:
IPv4 Address = 4.4.4.1
IPv4 Netmask = 4.4.4.2
IPv4 Gateway = 4.4.4.3
DNS Servers = 4.4.4.41,4.4.4.42
Alors ... Voici le code que j'utilise avec l'aide de la pile
Clear-Host
$info = Get-Content xxxx
$finalpatch = "xxxx"
$content = ($info -split "`n")
For($i=0;$i -lt $content.count;$i++){
if($content[$i] -match "Hostname:")
{
#"Hostname Information"
$infohostname = $content[$i+1]
}
elseif($content[$i] -match "IPv4 Address")
{
#"Ipv4 Address"
$infoipv4 = ($content[$i] -split "=")[1]
}
elseif($content[$i] -match "IPv4 Netmask")
{
#"Netmask Information"
$infonetmask = ($content[$i] -split "=")[1]
}
elseif($content[$i] -match "IPv4 Gateway")
{
#"Gateway Information"
$gatewayinfo = ($content[$i] -split "=")[1]
}
if($content[$i] -match "DNS Servers")
{
# "DNS Servers Information"
$dnsinfo = ($content[$i] -split "=")[1]
}
Write-Host $infohostname ,$infoipv4,$infonetmask,$gatewayinfo,$dnsinfo
et le resul f ot le code est le suivant:
xxxx1-CS0,8.1.9-184 4.4.4.1 4.4.4.2 4.4.4.3 4.4.4.41,4.4.4.42
xxxx1-CS0,8.1.9-184 4.4.4.1 4.4.4.2 4.4.4.3 4.4.4.41,4.4.4.42
xxxx1-CS0,8.1.9-184 4.4.4.1 4.4.4.2 4.4.4.3 4.4.4.41,4.4.4.42
xxxx1-CS0,8.1.9-184 1.1.1.1.1.1 4.4.4.2 4.4.4.3 4.4.4.41,4.4.4.42
xxxx1-CS0,8.1.9-184 1.1.1.1.1.1 1.1.1.1.1.4 4.4.4.3 4.4.4.41,4.4.4.42
xxxx1-CS0,8.1.9-184 1.1.1.1.1.1 1.1.1.1.1.4 1.1.1.1.1.5 4.4.4.41,4.4.4.42
xxxx1-CS0,8.1.9-184 1.1.1.1.1.1 1.1.1.1.1.4 1.1.1.1.1.5 1.1.1.1.1.1,1.1.1.1.1.12
xxxx2,7.1.80-7 1.1.1.1.1.1 1.1.1.1.1.4 1.1.1.1.1.5 1.1.1.1.1.1,1.1.1.1.1.12
xxxx2,7.1.80-7 1.1.1.1.1.1 1.1.1.1.1.4 1.1.1.1.1.5 1.1.1.1.1.1,1.1.1.1.1.12
xxxx2,7.1.80-7 1.1.1.1.1.1 1.1.1.1.1.4 1.1.1.1.1.5 1.1.1.1.1.1,1.1.1.1.1.12
xxxx2,7.1.80-7 2.2.2.2.1 1.1.1.1.1.4 1.1.1.1.1.5 1.1.1.1.1.1,1.1.1.1.1.12
xxxx2,7.1.80-7 2.2.2.2.1 2.2.2.2.3 1.1.1.1.1.5 1.1.1.1.1.1,1.1.1.1.1.12
xxxx2,7.1.80-7 2.2.2.2.1 2.2.2.2.3 2.2.2.2.4 1.1.1.1.1.1,1.1.1.1.1.12
xxxx2,7.1.80-7 2.2.2.2.1 2.2.2.2.3 2.2.2.2.4 2.2.2.2.2,2.2.2.2.3
xxxxx3,8.1.9-184 2.2.2.2.1 2.2.2.2.3 2.2.2.2.4 2.2.2.2.2,2.2.2.2.3
xxxxx3,8.1.9-184 2.2.2.2.1 2.2.2.2.3 2.2.2.2.4 2.2.2.2.2,2.2.2.2.3
xxxxx3,8.1.9-184 2.2.2.2.1 2.2.2.2.3 2.2.2.2.4 2.2.2.2.2,2.2.2.2.3
xxxxx3,8.1.9-184 3.3.3.3.3.1 2.2.2.2.3 2.2.2.2.4 2.2.2.2.2,2.2.2.2.3
xxxxx3,8.1.9-184 3.3.3.3.3.1 3.3.3.3.3.2 2.2.2.2.4 2.2.2.2.2,2.2.2.2.3
xxxxx3,8.1.9-184 3.3.3.3.3.1 3.3.3.3.3.2 3.3.3.3.3.5 2.2.2.2.2,2.2.2.2.3
xxxxx3,8.1.9-184 3.3.3.3.3.1 3.3.3.3.3.2 3.3.3.3.3.5 3.3.3.3.3.3,3.3.3.3.3.4
xxxx4,8.1.9-184 3.3.3.3.3.1 3.3.3.3.3.2 3.3.3.3.3.5 3.3.3.3.3.3,3.3.3.3.3.4
xxxx4,8.1.9-184 3.3.3.3.3.1 3.3.3.3.3.2 3.3.3.3.3.5 3.3.3.3.3.3,3.3.3.3.3.4
xxxx4,8.1.9-184 3.3.3.3.3.1 3.3.3.3.3.2 3.3.3.3.3.5 3.3.3.3.3.3,3.3.3.3.3.4
xxxx4,8.1.9-184 4.4.4.1 3.3.3.3.3.2 3.3.3.3.3.5 3.3.3.3.3.3,3.3.3.3.3.4
xxxx4,8.1.9-184 4.4.4.1 4.4.4.2 3.3.3.3.3.5 3.3.3.3.3.3,3.3.3.3.3.4
xxxx4,8.1.9-184 4.4.4.1 4.4.4.2 4.4.4.3 3.3.3.3.3.3,3.3.3.3.3.4
xxxx4,8.1.9-184 4.4.4.1 4.4.4.2 4.4.4.3 4.4.4.41,4.4.4.42
Cela fonctionne pour analyser les informations contenues dans les lignes, mais la question est la duplication du comte, je cherche un moyen d'obtenir que la dernière ligne pour chaque appareil avec les chiffres analysés, si vous regardez la sortie ne sais pas pourquoi le tableau conserve l'adresse IP d'un autre appareil, par exemple:
xxxx4,8.1.9-184 3.3.3.3.3.1 3.3.3.3.3.2 3.3.3.3.3.5 3.3.3.3.3.3,3.3.3.3.3.4
xxxx4,8.1.9-184 4.4.4.1 4.4.4.2 4.4.4.3 4.4.4.41,4.4.4.42
est-ce les mêmes informations « nom d'hôte », mais la première ligne rattrape l'adresse IP du périphérique précédent. et si vous regardez les exemples, la dernière ligne de chaque périphérique est la bonne.
Merci !, J'aime votre Sugestion, mais je ne sais pas si je peux l'utiliser d'une manière sustable, parce que je suis arrivé tableaux diférents d'information et de travail avec regex peut être difficile, avez-vous une autre idée? –
Eh bien, vous allez devoir ajuster presque n'importe quelle réponse selon le tableau. Je ne peux pas penser à un moyen d'analyser un fichier texte qui acceptera n'importe quel tableau lancé dessus. – TheMadTechnician