Überall wo ich nachgesehen habe, habe ich Methoden gezeigt, die mit physischen Dateien arbeiten, aber aus irgendeinem Grund nicht mit einem Array. Ich möchte diese Daten lieber nicht speichern, dann aus einer Datei aufrufen und einfach mit dem Array arbeiten, wenn das möglich ist. Ich stehe mit PowerShell v2 fest, aber das sollte noch machbar sein. Ich schätze jede Hilfe im Voraus.
Ich habe ein Array namens $net_final
mit den folgenden Werten:
Ich mache dann folgendes, um eine Liste von IPs zu erhalten, die 5 oder öfter in diesem Array vorkommen:
($net_final | Group-Object | Where-Object {$_.Count -ge 5} |
Format-Table -HideTableHeaders -Property Name | Out-String).Trim()
Was mir diese Ausgabe bringt:
%Vor% Allerdings kann ich nicht scheinen, dass sie in der gleichen Zeile durch Kommas getrennt sind. Eine kommagetrennte Liste nur aus dem Array zu machen, ist ziemlich unkompliziert mit Dingen wie $net_final -Join ","
und ($net_final | Select-Object -Unique) -Join ","
, aber ich muss Array-Elemente greifen, die $ N oft vorkommen.
Erwartete Ausgabe :
64.339.161.5,19.19.19.19,63.339.161.7
Hier geht's, ein nettes kleines Einzeiler für Sie:
%Vor%Das wird ausgeben:
%Vor%Noch schneller / einfacher zu lesen:
%Vor%1,2,3,7
Sie können ein beliebiges Array mit dem Flag -unique zur Sortierung leiten. Die eingepackte Variable kann dann mit Ihrem bevorzugten Trennzeichen verknüpft werden.
Tags und Links arrays windows powershell powershell-v2.0 sorting