ConvertFrom-Json 是不是尊重 -ErrorAction

Posted

技术标签:

【中文标题】ConvertFrom-Json 是不是尊重 -ErrorAction【英文标题】:Does ConvertFrom-Json respect -ErrorActionConvertFrom-Json 是否尊重 -ErrorAction 【发布时间】:2017-05-07 10:17:41 【问题描述】:

我正在编写一个需要解析 JSON 的脚本,但我在某些文件上遇到了错误。错误是因为 JSON 无效,这很好,但我希望能够检测到这一点并在脚本中处理它。 ConvertFrom-Json 似乎不支持 -ErrorAction,不过。真的吗?我在网上没有看到任何关于此的内容。

【问题讨论】:

【参考方案1】:

ErrorAction 是 PowerShell 2 中添加的通用参数

来自ConvertFrom-JSON MSDN article

常用参数

此 cmdlet 支持常用参数:-Debug、-ErrorAction、 -ErrorVariable、-InformationAction、-InformationVariable、-OutVariable、-OutBuffer、-PipelineVariable、-Verbose、-WarningAction 和 -WarningVariable。有关详细信息,请参阅 about_CommonParameters (http://go.microsoft.com/fwlink/?LinkID=113216)。

编辑:这是 PowerShell 5 和 6 的 bug logged on the PowerShell GitHub

【讨论】:

看到了...但它不起作用:-/ $text | ConvertFrom-Json -ErrorAction SilentlyContinue 导致未处理的错误。我现在通过添加try/catch 块来解决它。 看起来这是bug logged on GitHub 为了完整起见:github 错误已关闭 针对此问题的建议修复未被接受并按设计解决 仍然在 Powershell 7 中展示。

以上是关于ConvertFrom-Json 是不是尊重 -ErrorAction的主要内容,如果未能解决你的问题,请参考以下文章

PowerShell:ConvertFrom-Json 将多个对象导出到 csv

convertfrom-json).head.head3.data8

格式化 Invoke-RestMethod 或 ConvertFrom-Json 返回的 [pscustomobject] 实例

PowerShell 2.0 ConvertFrom-Json 和 ConvertTo-Json 实现

PowerShell - ConvertFrom-Json 无法正确序列化具有混合属性的 JSON 项目数组 [重复]

Matlab 的 crossval 方法是不是尊重类频率?