Я не могу представить эту комбинацию из массива/цикла. Я ищу запуск сценария, который будет получать все активные сетевые карты, а затем переименовать их на основе CSV-файла. Впоследствии я создаю команду NIC и снова использую CSV-файл для настройки статической сетевой информации.Переименование нескольких nics с использованием CSV-файла
я получить все активные NICs с помощью:
$Adapter = Get-NetAdapter | where {$_.status -eq "up"}
Заголовки файлов CSV в следующем виде:
host newname ipaddress subnet gateway dns
В столбце newname
имеет значение admin1a;admin1b
.
Вот пример, который работает, но выдает ошибку:
Foreach ($entry in $DC1_NICS) {
$NewName = $entry.NewName.split(";")
Foreach ($item in $NewName) {
Foreach ($nic in $Adapter) {
Rename-NetAdapter -Name $Nic.Name -NewName $item
}
}
}
Итак, у меня есть два названия, которые я могу расколоть, admin1a
и admin1b
, но я не могу показаться, чтобы получить сетевые адаптеры, которые будут названы соответствующим образом, либо только один сетевой адаптер переименовывается или оба выполняются, а затем появляются дополнительные ошибки.
Покажите нам весь файл CSV или, по крайней мере, образец. –
@WalterMitty Не имеет значения, как выглядит весь CSV. Проблема не в его CSV, это с его петлями ForEach. Ответ скоро. – TheMadTechnician