我很新于powershell技术,需要一些帮助。
我想将一个json对象作为参数传递给另一个ps1文件。从搜索得知,我需要将其从json字符串转换为powershell对象。如果我错了,请纠正我。这就是我正在做的事情:
调用脚本:
$jsonParams = "{
`"TaskName`": `"$taskName`",
`"ExitCode`": `"$exitCode`",
`"ErrorMessage`": `"$errorMessage`"
}
$jsonObject = $jsonParams | ConvertFrom-Json
$argumentList = @($param1, $param2, $jsonObject)
Invoke-Expression "& `"$scriptPath`" $argumentList"
在所谓的脚本中,它被称为 -
param (
[string]$param1,
[string]$param2,
[Microsoft.PowerShell.Commands.JsonObject]$jsonObject
)
但是,调用脚本会抛出错误。
ConvertFrom-Json : Invalid object passed in, ':' or '}' expected. (21): {
这段代码有什么问题?另外,在将json对象传递给被调用的脚本之后,我应该如何访问它的值。
谢谢!
@{TaskName=setup; ExitCode=1; ErrorMessage=NoError;}
这是在执行ConvertFrom-Json
后的输出。 - Saurabh