Сейчас у меня есть CSV-файл, который содержит более 3800 записей.Этот файл содержит список имен серверов, за которым следует аббревиатура, указывающая, является ли сервер сервером Windows, сервером Linux и т. Д. Файл также содержит комментарии или документацию, где каждая строка начинается с «#», указывая, что это комментарий.Пока что у меня есть следующее:
$file = Get-Content .\allsystems.csv
$arraysplit = @()
$arrayfinal = @()
[int]$windows = 0
foreach ($thing in $file){
if ($thing.StartsWith("#")) {
continue
}
else {
$arraysplit = $thing.Split(":")
$arrayfinal = @($arraysplit[0], $arraysplit[1])
}
}
foreach ($item in $arrayfinal){
if ($item[1] -contains 'NT'){
$windows++
}
else {
continue
}
}
$windows
Цель этого скрипта - подсчитать общее количество серверов Windows.Моя проблема в том, что первый блок «foreach» работает нормально, но второй приводит к тому, что «$ Windows» равно 0. Я честно не уверен, почему это не работает.Вот два примера строк данных:
example:LNX
example2:NT