【问题标题】:Powershell profile "on exit" event?Powershell配置文件“退出”事件?
【发布时间】:2010-03-12 23:19:17
【问题描述】:

我正在寻找一种在 PowerShell 会话退出时自动执行一些清理任务的方法。因此,例如在我的配置文件中,我启动了一个需要在后台运行以执行大量任务的进程,并且我想在关闭控制台时自动关闭该进程。

PowerShell 在关闭会话时是否会像在显示提示时自动调用 prompt 那样自动调用某些函数?

【问题讨论】:

    标签: powershell


    【解决方案1】:

    您可以使用Register-EngineEvent cmdlet 将事件处理程序附加到Exiting 事件:

    Register-EngineEvent PowerShell.Exiting -Action { ... }
    

    但是请注意,如果您关闭控制台窗口,则不会触发此事件。

    【讨论】:

    • 谢谢,这很好用,但我主要是关闭了我的 shell,没有明确输入 exit。也许别人有想法,否则我需要习惯exit ;)
    • 顺便说一句。您应该添加参数-SupportEvent 以防止PowerShell 在shell 启动时打印出事件数据。 -- 或者通过管道发送到Out-Null
    • @poke:我在我的个人资料中使用了以下小 sn-p:Invoke-Expression "function $([char]4) { exit }" 这允许我通过按 Ctrl+D 和 Enter 退出 PowerShell。不完美,但足够短,可以避免使用 X 按钮。
    • 哇,这主意不错!非常感谢:)
    • 我觉得exit比点击x按钮容易。
    猜你喜欢
    • 1970-01-01
    • 2013-03-16
    • 2021-06-22
    • 2011-02-28
    • 1970-01-01
    • 2018-02-15
    • 1970-01-01
    • 2018-05-08
    • 1970-01-01
    相关资源
    最近更新 更多