如何按需加载PowerShell函数?
在每次启动PowerShell时都会加载的个人PowerShell配置文件中,我希望通过调用函数来包含一组函数 所以我想这样做:如何按需加载PowerShell函数?,powershell,include,powershell-module,Powershell,Include,Powershell Module,在每次启动PowerShell时都会加载的个人PowerShell配置文件中,我希望通过调用函数来包含一组函数 所以我想这样做: function loadMyFunctions{ . \MyFunctions.ps1 } 现在,在MyFunctions.ps1中,我有一个函数: function bobtest{ write-host "My name is Bob Newhart." } 我可以加载脚本MyFunctions.ps1,但加载后我无法在控制台中调用bobte
function loadMyFunctions{
. \MyFunctions.ps1
}
现在,在MyFunctions.ps1
中,我有一个函数:
function bobtest{
write-host "My name is Bob Newhart."
}
我可以加载脚本MyFunctions.ps1,但加载后我无法在控制台中调用bobtest
-我收到错误消息术语bobtest无法识别…
但是,如果我只是在函数外部加载脚本,那么该脚本将被加载,并且我可以正常调用bobtest
——但这意味着在加载配置文件时我不能不加载MyFunctions
——我必须加载MyFunctions
,并且无法选择
你看,我想按需加载其他函数,在我选择之前不让它们可用
是否有其他方法可以做到这一点,或者甚至可以做到这一点?看看这个,如何创建PowerShell模块和清单
这将使您能够创建一个模块,该模块将具有所有自定义功能!然后在loadMyFunctions
cmdlet的内部添加Import Module NewModuleName
这将使您能够使用cmdlet
希望这有帮助,
Lachlan了解一下如何创建PowerShell模块和清单
这将使您能够创建一个模块,该模块将具有所有自定义功能!然后在loadMyFunctions
cmdlet的内部添加Import Module NewModuleName
这将使您能够使用cmdlet
希望这有帮助,
Lachlan最好的方法是使用模块。但是如果你想用不同的方式,你可以尝试你的方法 请参阅我执行的以下屏幕截图 我有一个函数addition,它只做加法,我将它保存为funct1.ps1 现在我从另一个脚本的另一个函数调用同一个函数,只使用点源代码,不使用as模块,结果正确 Funct1.ps1 从另一个脚本中的另一个函数触发该函数
希望对你有帮助 最好的方法是使用模块。但是如果你想用不同的方式,你可以尝试你的方法 请参阅我执行的以下屏幕截图 我有一个函数addition,它只做加法,我将它保存为funct1.ps1 现在我从另一个脚本的另一个函数调用同一个函数,只使用点源代码,不使用as模块,结果正确 Funct1.ps1 从另一个脚本中的另一个函数触发该函数
希望对你有帮助 这很有趣-我简单地考虑了一下模块,然后忘记了它-我会尝试找出如何做到这一点。很抱歉,无意中删除了该评论。模块是一个很好的方式去!我过去使用过这些,而不是使用函数。我从来没有对这些有过异议。使用配置文件调用包含其他函数的模块。我已经删除了前面的答案,因为我同意我错误地解释了这个问题。这很有趣-我简单地考虑了一下模块,然后忘记了它-我将尝试找出如何做到这一点。很抱歉,意外删除了该评论。模块是一个很好的方式去!我过去使用过这些,而不是使用函数。我从来没有对这些有过异议。使用配置文件调用包含其他函数的模块。我已经删除了之前的答案,因为我同意我错误地解释了这个问题。这非常有效,正是我想要的-谢谢你的好主意。非常感谢善良,非常乐意帮助这非常有效,也正是我想要的-谢谢你的好主意。非常感谢善良,非常乐意帮助这也是一个合理的方法。我知道函数可以为脚本提供源代码并使用它的函数,但我真正想要的是一种动态选择“包含”脚本的方法。这也是一种合理的方法。我知道函数可以为脚本提供源代码并使用它的函数,但我真正想要的是一种动态选择“包含”脚本的方法。