PowerShell数组合并问题:如何合并两个自定义对象数组
PowerShell 合并两个自定义对象属性的方法
你的需求本质是将两个独立的自定义对象(各带一个属性)合并为一个包含两个属性的对象,从而输出目标表格格式。以下是两种可行实现方式:
方式一:直接构建目标对象(推荐,更简洁)
跳过生成单独的$Line_IP和$Line_Diff,直接创建包含所需两个属性的自定义对象:
# 定义原始变量 $IP_Diff = "10.1.101.17" $ServerName = "ExServer-01" $Exist = "False" # 构建合并后的对象 $CombinedResult = [PSCustomObject]@{ Problem_IP = $IP_Diff -join ";" # 保留-join兼容后续数组场景 $ServerName = $Exist -join ";" } # 输出结果 $CombinedResult
方式二:合并已生成的$Line_IP和$Line_Diff对象
如果已经生成了$Line_IP和$Line_Diff,可以提取它们的属性值构建新对象:
# 保留你原有的对象生成代码 $IP_Diff = "10.1.101.17" $Line_IP = (@{N="Initialize"}).N | Select @{N = "Problem_IP";E={$IP_Diff -join ";"}} $ServerName = "ExServer-01" $Exist = "False" $Line_Diff = (@{N="Initialize"}).N | Select @{N = $ServerName;E={$Exist -join ";"}} # 合并属性 $CombinedResult = [PSCustomObject]@{ Problem_IP = $Line_IP.Problem_IP $ServerName = $Line_Diff.$ServerName } # 输出结果 $CombinedResult
两种方式执行后,都会输出你期望的表格格式:
Problem_IP ExServer-01 ---------- ------------- 10.1.101.17 False
内容的提问来源于stack exchange,提问作者hdsouza
相关产品推荐
相关产品推荐

