Я новичок в Powershell, поэтому не знаю огромное количество.

У меня есть меню, и у меня есть 2 варианта ("Добавить IP" и «Список IP-адресов»)

Код "Добавить IP":

$UIP = Read-Host "Enter IP to whitelist"
$whitelist += $UIP

Код "Список IP":

Write-Host "==== $Title Whitelist IPs ===="
Write-Host
Write-Host $whitelist

Единственная проблема заключается в том, что когда я перечисляю массив, он перечисляет все в одной строке следующим образом:

192.168.0.1192.168.0.2

когда я хотел бы отображать так:

192.168.0.1
192.168.0.2

2 ответа2

0

Вы можете использовать цикл for для достижения этой цели

for ($ loopindex = 0; $ loopindex -lt $ белый список.граф; $ loopindex ++){$ whitelist [$ loopindex]}

0

Вам не нужно использовать цикл для выполнения этого, если вы не хотите выполнять какие-либо операции с каждым IP.

Просто использовать

Write-Host ($whitelist -join "`n")

Это вставит новую строку между каждым элементом в массиве. Я сравнил различия ниже:

$array = @('foo','bar')
write-host ($array -join "`n") 

Output:
foo
bar

против

$array = @('foo','bar')
write-host $array

Output:
foo bar

Надеюсь, поможет.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .