无法使用PowerShell从JSON响应中筛选URL

无法使用PowerShell从JSON响应中筛选URL,json,powershell,parsing,Json,Powershell,Parsing,我在一个文件中有JSON原始内容。我正在尝试使用ConvertFrom Json解析URL。不知何故,它不起作用。我们非常欣赏这些想法 $file1 = "C:\Test\output1.txt" $file2 = "C:\Test\output2.txt" $content = Get-Content $file1 $response = ConvertFrom-Json $content $urls = $response.input | where {$_.url} $urls | Ou

我在一个文件中有JSON原始内容。我正在尝试使用ConvertFrom Json解析URL。不知何故,它不起作用。我们非常欣赏这些想法

$file1 = "C:\Test\output1.txt"
$file2 = "C:\Test\output2.txt"

$content = Get-Content $file1
$response = ConvertFrom-Json $content
$urls = $response.input | where {$_.url}
$urls | Out-File $file2
output1文件中的原始内容为:

{"workitems":[{"Inputs":{"url":"http://www.cmha.ca/news-and-events/news/?70301308070201301010","c":"1"},"Outputs":{"ip":"50.56.166.145","latencymilliseconds":"785","httpstatuscode":"200","completeresponse":"HTTP/1.1 200 OK\r\nVary: ......etc}}]}

该文件大小约为10kKB。我们如何才能最好地解析并获取output2.txt文件的URL

运行以下代码

$file1 = "file1.txt"
$content = Get-Content $file1
$response = ConvertFrom-JSON $content
$urls = $response.workitems.inputs | where {$_.url}
$urls.url
输出


运行以下代码

$file1 = "file1.txt"
$content = Get-Content $file1
$response = ConvertFrom-JSON $content
$urls = $response.workitems.inputs | where {$_.url}
$urls.url
输出


我的错,这是复制粘贴错误,但我使用了“输入”,但系统抛出错误:无法将“system.Object[]”转换为参数“InputObject”所需的类型“system.String”。@sunray将
-Raw
添加到
获取内容
非常感谢-Raw让内容工作得很好。我还在JSON响应前后添加了方括号,因为ConvertFrom JSON不喜欢不包含开始方括号[]和结束方括号[]的JSON,而我的不使用[]输出。谢谢大家的帮助。我的错,这是复制粘贴错误,但我使用了“输入”,但系统抛出了错误:无法将“system.Object[]”转换为参数“InputObject”所需的类型“system.String”。@sunray将
-Raw
添加到
获取内容
非常感谢-Raw,因为获取内容工作得很好。我还在JSON响应前后添加了方括号,因为ConvertFrom JSON不喜欢不包含开始方括号[]和结束方括号[]的JSON,而我的不使用[]输出。谢谢大家的帮助。