【发布时间】:2021-04-17 04:57:49
【问题描述】:
这是一个通用问题,没有代码。 不确定我是否需要删除局部变量,因为我认为它应该由 Powershell 引擎完成。 我有一个从 WMI 收集信息的脚本并使用了很多局部变量。多次运行时输出混乱,但在我清理函数/脚本块末尾的所有局部变量后,它得到了修复。
任何想法/想法将不胜感激。
【问题讨论】:
-
没有代码和上下文很难评论。当 powershell 主机关闭或重新定义变量时,变量将被删除。如果您在编辑器中运行代码,它们可能会被保留,直到您重新启动编辑器..
-
代码示例肯定会有所帮助。一般情况下,您无需致电
Remove-Variable。确保初始化所有代码路径中的变量,例如。 G。如果您没有在if语句之前初始化变量$foo(或者在else分支中设置变量),请不要执行类似if(condition){ $foo = 42 }的操作。如果您尝试读取未初始化的变量,请使用Set-StrictMode让 PowerShell 抛出错误。 -
感谢你们的帮助。 Set-StrickMode 真的很有帮助。
标签: powershell variables scope garbage-collection