在PowerShell中运行函数

时间:2010-07-06 23:26:30

标签: powershell

我是PS的新手,已经获得了一个可以运行的脚本。我要做的第一件事就是输入c:\powershell\ir.ps1。这似乎有效。然后在定义我的客户端目录后,我应该只能输入ir-n等函数。这在人员的办公桌上工作,告诉我该怎么做,但我得到以下错误:

The term 'ir-n' is not recognized as the name of a cmdlet, function, script file, or
operable program. Check the spelling of the name,
or if a path was included, verify that the path is correct and try again.
At line:1 char:5
+ ir-n <<<<
  + CategoryInfo          : ObjectNotFound: (ir-n:String) [], CommandNotFoundException
  + FullyQualifiedErrorId : CommandNotFoundException

我能做些什么来让它运行吗?我在ir.ps1文件中看到了这个函数,所以我知道它在那里。

2 个答案:

答案 0 :(得分:7)

看起来你应该运行ir.ps1脚本。我猜测ir.ps1文件正在定义一个名为ir-n的函数。在这种情况下,运行脚本不会在脚本的上下文中定义函数,也不会在命令窗口中定义函数。您需要获取脚本以使其在命令窗口中保留。

尝试运行以下

PS$> . c:\powershell\ir.ps1

运行此操作后,请尝试ir-n

答案 1 :(得分:2)

您可能需要dot source脚本,这将使其定义的函数在全局范围内可用,例如:

PS> . c:\powershell\ir.ps1