当我在Windows资源管理器的上下文菜单中通过“使用PowerGUI脚本编辑器打开”打开任何.ps1时,PowerGUI首先运行脚本,然后让我编辑它。这是设计的行为吗?
如果我运行PowerGUI脚本编辑器,则通过File |打开 .ps1打开,它不会运行它,让我立即编辑它(所需的行为)。
我怎样才能: 1)防止PowerGUI编辑器在打开时首先运行脚本,并且 2)使用命令行参数来做同样的事情(使用PowerGUI作为帮助应用程序)?
谢谢!
答案 0 :(得分:4)
PowerGUI脚本编辑器在其启动时运行了一些东西:PowerShell配置文件,以及您选择的任何模块/管理单元。
要禁用PowerShell配置文件调用:
确保没有启动任何模块/管理单元/加载项:
下次启动PowerGUI脚本编辑器时,它将不会运行任何外部PowerShell代码。
答案 1 :(得分:1)
除非这里有一个模糊的错误,否则PowerGUI在使用“使用PowerGUI脚本编辑器打开”上下文菜单打开脚本时不执行脚本,双击时也不会执行脚本。以这种方式打开脚本时,只需在编辑器中打开它。您将在脚本编辑器的状态栏中看到“执行脚本...”文本,而不是因为它正在执行您要打开的脚本,而是因为它正在执行其他脚本(配置文件,加载模块等)。如果您的脚本正在执行,我会调查它是如何执行的,这可以使用$ MyInvocation变量和Get-PSCallStack来完成,以获取该信息。
至于您的其他问题,您可以使用命令行来获取PowerGUI脚本编辑器以打开脚本文件。我们有许多合作伙伴使用我们的脚本编辑器执行此操作。有关可用选项的详细信息,请参阅我们的wiki http://wiki.powergui.org/index.php/Using_Editor_from_external_applications上的此页面。