У меня есть текстовый файл с таким содержимым:Создание массива из значений в текстовый файл с помощью PowerShell
SEGMENTS="worker01 worker02 worker03 worker04"
WORKER_SEGMENTS="worker01 worker02 worker03 worker04"
#SEGMENTS="worker01"
#WORKER_SEGMENTS="worker01"
Я прочитал этот файл с другого Powershell скрипт, и я хочу, чтобы создать массив WORKER_SEGMENTS
значений , Я получил до сих пор:
$workers = Get-Content $strPath"\worker\conf\segments.conf" | Where-Object {$_ -like "*WORKER_SEGMENTS*"}
Write-Host $workers
Это дает:
PS Q:\mles\etl-i_test\rc> .\etl.ps1
WORKER_SEGMENTS="worker01 worker02 worker03 worker04" #WORKER_SEGMENTS="worker01"
я только нужен worker01
, worker02
, worker03
, worker04
из WORKER_SEGMENTS
(без ведущего #) в виде массива. Как мне это достичь?
Это, кажется, ответ, который я могу понять больше всего. Что делает '% {($ _ -split '"') [1] -split ''} 'do? – mles
Он получает контент между двумя первыми двумя символами' '' (которые являются рабочими), затем он превращает имена в массив путем разбиения на пространство. Первый пример делает то же самое с использованием регулярного выражения. –