在 PowerShell 中获取值和串联的问题

Issue with getting value and concatenation in PowerShell

我有一个简单的脚本来将主机名解析为 IP 地址,然后从中创建键值对以在 jenkins 中使用:

$ips = Resolve-DnsName -type a HOSTNAME | FT IPAddress -HideTableHeaders
echo $ips
>> 192.168.3.1

但是当我想在键值对中使用这个输出时,我收到以下信息:

$keyvalue = $(echo 'ipaddr:'"$ips")

PS C:\Users\vegas.s> echo $keyvalue
ipaddr:
Microsoft.PowerShell.Commands.Internal.Format.FormatStartData    Microsoft.PowerShell.Commands.Internal.Format.GroupStartData Microsoft.PowerShell.Commands.Internal.Format.FormatEntryData Microsoft.PowerShell.Commands.Internal.Format.GroupEndData Microsoft.PowerShell.Commands.Internal.Format.FormatEndData

我想收到以下内容:

ipaddr:192.168.3.1

我做错了什么?

试试这个:

#join the string and ip separated by colon
$keyvalue = 'ipaddr',$ips -join ':'

PS C:\Users\vegas.s> echo $keyvalue