在ISE中编写powershell脚本时,我有类似的东西(我用 F5 执行):
Function DoSomethingNow
{
"What am I doing?"
}
DoSomethingNow
问题是,如果我重命名或删除DoSomethingNow
,它仍可在会话中使用。这会引起混淆,因为我的脚本将继续工作,而在缺少函数的情况下我会发现错误。
我只能假设我需要在每轮调试后清除会话,但是看起来这只能通过重新启动ISE(因此重新启动powershell会话)来实现。
因此我问:
DoSomethingNow
不再在范围内?我很欣赏被指向正确的方向。
答案 0 :(得分:3)
您可以使用Remove-Item
和Function
PSDrive
Remove-Item Function:\DoSomethingNow
如果您将其添加到脚本的末尾&删除每个功能(仅在调试情况下,我希望),每次都会重新开始。您可以对别名和&环境变量,如果你要设置它们。
您可能还想查看$Error.Clear()
以清除$Error
对象中的所有条目,以及Remove-Variable
(您可能会猜到这个条目的作用)。