首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >扩展PSObject内容

扩展PSObject内容
EN

Stack Overflow用户
提问于 2015-07-09 05:22:49
回答 3查看 535关注 0票数 1

我有两个变量:

代码语言:javascript
复制
$variables2007 = "item1;Item2;Item3;item4" -split ';'
$data2007 = "Data1;data2;data3;data4" -split ';'

我试图将这些内容放到一个表中,以便$variables2007的内容与$data2007的值并排匹配。我尝试过这样一个定制的PSObject:

代码语言:javascript
复制
$Props2007 = [ordered]@{
  "2007Vars" = $variables2007 
  "Data2007" = $variables2007Data
}

New-Object -TypeName PSObject -Property $Props2007

然而,这仍然只是写出来的表塞在彼此之间,即:

代码语言:javascript
复制
{item1 item2 item3 item4} 

每一种内容都没有一个很好的列表,比如:

代码语言:javascript
复制
item1    value1
item2    value2
item3    value3
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-07-09 05:44:42

试试这个:

代码语言:javascript
复制
$h = [ordered]@{}
for ($i=0; $i -le $variables2007.Length; $i++) {
   $ht["$($variables2007[$i])"] = $data2007[$i]
}
[psobject]$ht

Name                           Value
----                           -----
item1                          Data1
Item2                          data2
Item3                          data3
item4                          data4
票数 5
EN

Stack Overflow用户

发布于 2015-07-09 05:43:07

只需将数据放入散列表中,然后枚举内容即可。

代码语言:javascript
复制
$Props2007 = [ordered]@{

  item1 =  'Data1'
  item2 =  'Data2' 
  item3 =  'Data3' 

}

$Props2007
票数 2
EN

Stack Overflow用户

发布于 2015-07-09 12:02:05

PSv3及以上

代码语言:javascript
复制
$Props2007 = @()
(0..$variables2007.Length) | %{$Props2007+=[pscustomobject]@{Variable=$variables2007[$_];Data=$data2007[$_]}}

$Props2007

这个方法的好处是很容易扩展,可以包含更多的列/成员

代码语言:javascript
复制
(0..$variables2007.Length) | %{$Props2007+=[pscustomobject]@{Variable=$variables2007[$_];Data=$data2007[$_];SomeThirdData=$ThirdData[$_]}}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31308793

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档