我写了以下代码
$sb = {
. .Myfunctions.ps1
$x = MyFunction1
$y = MyFunction2
$x + $y
}
$cred = Get-Credential "domainuser"
Invoke-Command -Computer localhost -Credentials $cred -ScriptBlock $sb
这是不起作用的,因为它说了术语。 myfunctions.ps1不被识别为commandlet
为什么我不能在脚本块中包含一个文件?
问题是脚本块中的 $pwd
(当前目录)与实际控制台路径不同,因为您将 invoke-command
与 -computer
参数一起使用,就像您在远程会话。尝试将完整的脚本路径拨打来调用或仅使用(如果本地)& $sb