在PowerShell中加载自定义函数

时间:2013-09-12 12:29:03

标签: powershell

我已经在一个额外的PowerShell脚本文件中定义了一些其他功能,我正在尝试加载主.ps1文件。但是,当我从PowerShell提示符调用.ps1文件时,它似乎没有运行这些命令。

在下面的代码示例中,build_functions.ps1具有定义各种自定义函数的代码。如果我单独运行该文件(例如,单独运行它然后运行主脚本)它可以正常工作。 Build_builddefs.ps1包含许多在运行主脚本之前还需要填充的变量。

在我的主要脚本开头,我有这个:

.\build_functions.ps1
.\build_builddefs.ps1

但是,这些似乎没有运行,因为主脚本在尝试执行第一个自定义函数时失败。我做错了什么?

2 个答案:

答案 0 :(得分:36)

你必须dot source他们:

. .\build_funtions.ps1
. .\build_builddefs.ps1

请注意额外的.

这篇heyscriptingguy文章应该有所帮助 - How to Reuse Windows PowerShell Functions in Scripts

答案 1 :(得分:17)

我一直都在使用这个

Import-module .\build_functions.ps1 -Force