вывод с заголовком в powershell - PullRequest
       0

вывод с заголовком в powershell

0 голосов
/ 19 сентября 2019

Я запускаю пакетный файл с использованием powershell, а затем выполняю небольшую постобработку, чтобы извлечь из него идентификатор.пока все хорошо, но я также хотел бы видеть его с заголовком.

$TempCIID = ci-list.bat -node_list server.domain.local | Select-String -pattern "ID: "

Вывод этой строки - ID: bbeaf351b2b071c35f3f984af5a15c2e

, а затем постобработка, как показано ниже.

$CIID = $TempCIID -split("ID: ");
$CIID = $CIID.Trim();

в результате у меня есть.

bbeaf351b2b071c35f3f984af5a15c2e

где желаемый результат:

ID
---
bbeaf351b2b071c35f3f984af5a15c2e

Я пробовал разные форматы командлетов, но ничего не помогло.

есть подсказка?

1 Ответ

1 голос
/ 19 сентября 2019

Вы можете преобразовать свои строковые части в пользовательскую пару свойство / значение объекта.Если вы разделите на : и обрежете начальные / конечные пробелы, у вас будет массив, содержащий ваше свойство в качестве первого элемента ([0]) и значение в качестве второго элемента ([1]).

# Assuming $TempCIID contains the following
$TempCIID = 'ID: bbeaf351b2b071c35f3f984af5a15c2e'

$CIID = $TempCIID.Split(':').Trim()
[pscustomobject]@{$CIID[0] = $CIID[1]}

# Output 

ID
--
bbeaf351b2b071c35f3f984af5a15c2e

Если вы хотите, чтобы ваш вывод был строкой, и вы хотите большей гибкости при выводе, я рекомендую использовать оператор форматирования (-f).

$CIID = $TempCIID.Split(':').Trim()
"{0}`n---`n{1}" -f $CIID[0],$CIID[1]

# Output

ID
---
bbeaf351b2b071c35f3f984af5a15c2e
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...