你怎么知道PowerShell脚本何时完成?

时间:2016-05-26 20:44:30

标签: wpf powershell

我正在尝试将一段代码包装到WPF应用程序中,以便用户只需按下按钮即可运行代码。但是,因为脚本可能需要一段时间才能运行,所以我想给最终用户一个状态,以便他们知道它已经完成。有没有办法用PowerShell和下面发布的这种代码风格来做到这一点?

1..255 | %{
    $I = "192.168.2.$_"
    Get-MacAddress($I);
    function Get-MacAddress {
        ...
    }
}

1 个答案:

答案 0 :(得分:1)

TL; DR:您可以发送exit 1退出,返回代码为1(或0以外的任何数字),这意味着它因某种原因失败。

通常(并在specific circumstances下)PowerShell脚本以代码0退出。大多数其他应用程序在“成功完成”时返回退出代码0,并且没有任何异常或错误的程序有意识地发生了。

如果您正在捕获WPF中的退出代码,您可以报告它是否成功(在代码中的某个位置插入exit 0,或者按预期完成),或者是否失败({ {1}}任何其他数字) - 此时您需要考虑报告特定于出错原因的唯一退出代码。

还要考虑查看exittrycatch,因为它们非常有用。

编辑:作为最后一点,请仔细研究throw(存储退出代码的位置)如何在某些unique situations下处理。如果您使用%errorLevel%代码,则需要关注%errorLevel%