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 实现