在ScriptBlock中包含PowerShell文件

时间:2012-10-27 15:16:23

标签: powershell scriptblock

我写了以下代码

$sb = {
    . .\Myfunctions.ps1
    $x = MyFunction1
    $y = MyFunction2
    $x + $y
}

$cred = Get-Credential "domain\user"

Invoke-Command -Computer localhost -Credentials $cred -ScriptBlock $sb

这不起作用,因为它说术语。\ MyFunctions.ps1不被识别为命令行程序

为什么我不能在脚本块中包含文件?

1 个答案:

答案 0 :(得分:1)

问题是脚本块中的$pwd(当前目录)与实际的控制台路径不同,因为您使用invoke-command -computer参数就像是在远程会话中进行。尝试将脚本的完整路径设置为调用它,或者只使用(如果是本地的)& $sb