Объединить 2 переменные (Powershell) - PullRequest
4 голосов
/ 01 февраля 2012

У меня есть список из 20 серверов: сервер1, сервер2, сервер3, сервер4, ... сервер20.

Мне нужно иметь массив «серверы», который содержит эти 20 серверов, что-то вроде:

$prefix = "server"
$number = "1..20"
$servers = $prefix+number

Мой ожидаемый результат: $servers="server1","server2","server3",...,"server20"

Заранее спасибо

Ответы [ 4 ]

3 голосов
/ 01 февраля 2012

Самый простой способ - это просто прописать это напрямую:

$servers = 1..20 | ForEach-Object { "server$_" }
1 голос
/ 01 февраля 2012

Использование строки формата

$prefix = "Server"
 1..20 | foreach {"$prefix{0}" -f $_}

Вы также можете использовать префикс $ {0: d2}, если хотите, чтобы все они имели двухзначные (заполненные нулями) цифры после префикса.

1 голос
/ 01 февраля 2012

Измените свою последнюю строку на:

$Servers = @()
$Number | % {$servers=$servers + "$prefix$_"}

В первой строке в качестве массива указывается $servers (в противном случае он будет объединен в виде длинной строки).

Вторая строка будетпросмотрите все цифры в вашем массиве $number и сделайте запись для каждого из них.

0 голосов
/ 05 февраля 2012
$null, $servers = 0..20 -join ';server' -split ';'
$servers
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...