У меня есть logdata, который содержит даты и IP-адреса.
Теперь я хочу знать, какой IP-адрес для этого дня.
Я использовал хэш-карту для использования ключа < => пары значений.
Но, к сожалению, есть дубликаты, как:
Как отсортировать hashmap, содержащий массивы
Day1<=>IP1, Day1<=>IP2, Day1<=>IP3, Day2<=>IP1, Day3<=>IP2, Day3<=>IP1
Я использовал, чтобы использовать массивы в качестве пары ключей < => значения, так что я все еще могу использовать
дубликатов, как hashentries. Могу ли я группа выход Хеш
так, что он отображает SMTH так:
date<=>IP1, IP2, IP3
date<=>IP1, IP2, IP3
?
Я думал о методе group-object
.
/редактировать:
Sampe вход может быть:
26.12.2014 1.1.1.1
28.12.2014 2.2.2.2
29.12.2014 1.1.1.1
29.12.2014 2.2.2.2
30.12.2014 2.2.2.2
30.12.2014 3.3.3.3
30.12.2014 3.3.3.3
30.12.2014 3.3.3.3
30.12.2014 4.4.4.4
30.12.2014 1.1.1.1
30.12.2014 2.2.2.2
Я пытаюсь получить все доступ в день. Все записи представляют собой массивы
, потому что у вас не может быть нескольких значений для ваших ключей.
Желаемый результат должен быть чем-л так:
26.12.2014: 1
28.12.2014: 1
29.12.2014: 2
30.12.2014: 7
В число дисплеев доступ в день.
/редактировать 2:
пример кода, как это:
$items = Get-ChildItem "$PSScriptRoot\*file*"
foreach ($item in $items)
{
$item_name = $item.Name
$content = [System.IO.File]::ReadAllLines("$PSScriptRoot\$item_name")
$hash = @{}
foreach($line in $content)
{
$hash.Add(@(((filter_date($line)).split(" ")[1])), @(((filter_date($line)).split(" ")[0])))
}
}
filter_date является soubroutine, который отсекает IP и дату в каждой строке.
Мне нужен образец ввода для правильного понимания вашего вопроса, а не только чертежа/концепции. Просьба предоставить образец ввода и желаемый выход. Являются ли входными несколькими текстовыми файлами? Если это так, включите несколько строк из одного из них (без каких-либо конфиденциальных данных). Что вы пробовали? –
Является ли это текстовым файлом или вы получаете массив строк из API и т. Д.? Не могли бы вы включить скрипт, который вы используете сегодня/ранее использовали? –
Источник - это папка, которая содержит много файлов logdatafiles. У меня было около 1000 текстовых файлов, которые я читал в цикле, файле на файл и вырезал определенные строки.Это очень быстро работает для меня. Выводом, конечно же, являются строки, в которых я продолжаю обработку. –