我调用函数时Powershell脚本抛出错误

时间:2015-05-21 06:02:58

标签: powershell

当我在PowerShell中调用该方法时,我收到以下错误。任何帮助都会非常感激。

错误:

  

错误   术语“测试”未被识别为cmdlet,函数,脚本文件的名称   ,或可操作的程序。检查名称的拼写,或者是否包含路径   ,验证路径是否正确,然后重试。

代码

Try
{   
    Test
}
Catch
{
    $ErrorMessage = $_.Exception.Message
    Write-Host "Error in" 
    Write-Host $ErrorMessage
}


function Test()
{
  Write-Host "Test Method Called"
}

1 个答案:

答案 0 :(得分:2)

您对Test的调用失败的原因是PowerShell脚本不是预编译的,而是从上到下进行评估。

由于Test函数仅在脚本结束时声明,因此它不存在"存在"当Try-Catch块被执行时。

只需交换订单:

function Test()
{
  Write-Host "Test Method Called"
}

Try
{   
    Test
}
Catch
{
    $ErrorMessage = $_.Exception.Message
    Write-Host "Error in" 
    Write-Host $ErrorMessage
}