powershell - 在powershell中从原始数据构造一个表
问题描述
目前,我对 Powershell 感到沮丧,因为我花了 2 个工作日来为以下问题找出一个(很可能是超级简单的)解决方案,这让我感到很愚蠢:我想将两个数组 ( $HeaderCells
, $DataCells
) 转换为一个表和似乎没有任何效果。我尝试了 PSObjects、数组、哈希表、数据表……这是我的代码:
$Table = @()
$HeaderCells = @("Company","Country")
$DataCells = @("Test Inc.","Misc Corp.","USA","UK")
foreach ($HeaderCell in $HeaderCells)
{
foreach ($DataCell in $DataCells)
{
$Table += New-Object -TypeName PSObject -Property @{$HeaderCell=$DataCell}
}
}
$Table
我的输出是:
Company
-------
Test Inc.
USA
Misc Corp.
UK
我想得到两列(公司和国家),但无论我尝试什么(即使是最嵌套的 for 循环,我总是最终会覆盖变量或只是得到错误。
我的实际用例实际上有点复杂(从 html 页面中提取表格),但我希望解决这部分问题能让我继续。
我想要的输出是将 HeaderCells 作为标题,将 DataCells 作为行,所以是这样的:
Company Country
------- --------
Test Inc. USA
Misc Corp. UK
解决方案
你也可以试试:
$DataCells = "Test Inc.","Misc Corp.","USA","UK"
$half = [math]::Floor($DataCells.Count / 2)
(0..($half - 1)) | ForEach-Object {
[PsCustomObject]@{
Company = $DataCells[$_]
Country = $DataCells[$_ + $half]
}
}
输出:
Company Country ------- ------- Test Inc. USA Misc Corp. UK
推荐阅读
- javascript - 如何显示选择下拉菜单取决于先前的选择?
- r - 单个连续随机变量位于区间内的概率 [55,100]
- html - 有没有一种方法可以在没有定义数量的可能更改的情况下动态更改 css 属性
- python - IndexError:索引 x 超出轴 0 的范围,大小为 x
- node.js - 在服务器端使用 Amqplib 的 NodeJs
- python - 使用python轮询谷歌云操作
- javascript - ESP32 - ESPAsyncWebServer - server.client()?
- python - Python多处理池创建重复列表
- c# - 如何通过 MimeKit 发送电子邮件
- python - Readthedocs autodoc 工作在 pdf 但不是 html