我尝试从另一个脚本中启动脚本的功能。 我想将返回值保存到变量中,但这不起作用。
script1.ps1:
function test
{
return "hallo"
}
script2.ps1:
./script1.ps1; $p=test
or
$p = ./script1.ps1; test
似乎$p
为空,但我不知道出了什么问题。
有人可以帮帮我吗?
THX
答案 0 :(得分:4)
试试这个:
. ./script1.ps1; $p=test
原因:您必须将函数加载到当前作用域(即开头的句点 - 点源运算符)。
如果您使用';',则会开始全新的陈述。因此,从示例$p = ./script.ps1; test
开始,您将script.ps1的输出分配给$p
,然后运行该函数。