我有三个我想要打印的数字列表。这三个列表是三个数字集合。它们具有相同数量的元素,因此从所有三个元素的第一个位置开始到最后一个元素,我必须打印这样的东西
Element in list1 pos1 | Element in list2 pos1 | Element in list3 pos1
Element in list1 pos2 | Element in list2 pos2 | Element in list3 pos2
Element in list1 pos3 | Element in list2 pso3 | Element in list3 pos3
Element in list1 pos4 | Element in list2 pos4 | Element in list3 pos4
...
如何使用Format-Table执行此操作? 或者更好的是,我如何使用Format-Table cmd-let来解决这个问题?
三江源
答案 0 :(得分:3)
这是一个解决方案:
$c0=357,380,45
$c1=12,20,410
$c2=223,270,30
0..($c0.Length -1) |
select-object (
@{n="one"; e={$c0[$_]}},
@{n="two"; e={$c1[$_]}},
@{n="three"; e={$c2[$_]}}
) |
format-table -auto;
结果:
one two three
--- --- -----
357 12 223
380 20 270
45 410 30
<小时/> 说明
@ {n =“ blah ”的每个实例; e = { blah }}是哈希表。键是“名称”和“表达式”的缩写。参见示例4 on this page。
“$ _”表示正在输入的值。在这种情况下,每个索引值都通过管道输入到select语句。
答案 1 :(得分:2)
$c0 = 357,380,45
$c1 = 12,20,410
$c2 = 223,270,30
$x = foreach ($i in 0..(($c0.count)-1)){
($c0[$i],$c1[$i],$c2[$i]) -join "," | convertfrom-csv -header "c0","c1","c2"
}
$x | ft -auto
c0 c1 c2
-- -- --
357 12 223
380 20 270
45 410 30
答案 2 :(得分:1)
我是一个名副其实的新手,我确信有更好的方法,但我希望这个例子可以帮到你
$e = @()
$a = 1,2,3,4
$b = 5,6,7,8
$c = 'nine','ten','eleven','twelve'
for ($i=0;$i -lt $a.count;$i++) {
$d = New-Object PSObject -Property @{
one = $a[$i]
two = $b[$i]
three = $c[$i]
}
$e+=$d}
$e | select one,two,three | ft -auto