【发布时间】:2011-05-03 22:14:20
【问题描述】:
我有一个脚本模块,其 .psm1 文件运行一个命令,如果某个注册表值不存在,该命令将失败。我想忽略这个失败,所以 .psm1 脚本运行命令为:
CommandThatMayFail -ea SilentlyContinue
当我在 PowerShell 会话中导入模块时,这工作得很好。但是此模块中的功能之一启动了一些同样需要导入模块的 PS 作业。当我在作业的 InitializationScript 中导入模块时,不会忽略来自 CommandThatMayFail 的失败并且作业终止。我尝试将 CommandThatMayFail 包装在 Try/Catch 块中,但这没有任何帮助。
我通过在作业的 ScriptBlock 中而不是 InitializationScript 中导入模块来避免这个问题。但我仍然很好奇这里发生了什么。任何人都可以解释一下吗?
【问题讨论】:
标签: powershell