在过去的几个小时里,我一直把我的第一个PowerShell脚本放在一起,我一直看到一个我似乎无法触及底部的错误。
我正在使用Powershell ISE工具编写和运行脚本。
要查看我的脚本中的某些内容我是否已经创建了一个超级简单的测试脚本,而且我看到了同样的问题。整个测试脚本是:
Test;
function Test
{
New-Item C:\Users\jgreen\Desktop\jammer\ -type directory
}
当我点击Run Script
按钮时,产生的错误是:
Test : The term 'Test' 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.
如果我再次按下Run Script
按钮,它就可以正常工作。我根本不明白有什么不对。我根本就没有得到它。我的脚本是否有问题?
为什么在PS ISE中打开脚本后,第一次弹出的脚本会爆炸?
答案 0 :(得分:4)
您在定义之前调用该函数。它第二次工作的原因是第一次运行的结果。当它第一次运行时它定义了函数,所以当你第二次运行脚本它知道函数是什么时。
答案 1 :(得分:2)
你需要在之前声明你的函数。它第二次工作,因为它已被宣布。想想如果你只是在一个powershell命令行并且输入了以下内容,那将是如何工作的:"测试;"你期望发生什么?