powershell - 如何在 PowerShell 中将 PSCustomObject 转换为数组?
问题描述
ConvertFrom-Json
我有以下用命令解析的 JSON 文件:
{
"item1": {
"class": "class1",
"price": "price1"
},
"item2": {
"class": "class2",
"price": "price2"
}
}
这将创建PSCustomObject
具有两个属性的 aitem1
和item2
。它产生以下输出:
item1 item2
----- -----
@{class=class1; price=price1} @{class=class2; price=price2}
我需要的是一个打印的数组:
name class price
---- ----- -----
item1 class1 price1
item2 class2 price2
请注意,我无法修改 JSON 文件的内容。
非常感谢任何形式的帮助。
解决方案
在我同事的代码中找到了解决方案:
$json = Get-Content -Path "<file-path>" | ConvertFrom-Json;
$json.PSObject.Properties | ForEach-Object { [PSCustomObject] @{
name = $_.Name;
class = $_.Value.class;
price = $_.Value.price;
}}
推荐阅读
- wordpress - 无法更改 wordpress 中的主页内容
- vue.js - Vue中如何控制组件重渲染粒度?
- xamarin - 根据语言本地化设置日期名称
- sql - BigQuery SQL:用多个条件替换字段中的值
- go - 在 Prometheus 中看不到 Golang REST API 的字符串指标输出
- mongodb - 如何在 HDFS 和 MongoDB 之间导入/导出数据
- excel - 嵌套 For Next 循环,嵌入 If then elseif 语句不获取值。工作表中的单元格保持为空
- javascript - 执行所有初始 Javascript 时的 DOM 事件
- pine-script - 使用 TradingView Pine 脚本将文本定位在角落或其他固定位置
- phpmailer - PHPMailer + reCAPTCHA:发送失败