【问题标题】:Powershell command-line throwPowershell 命令行抛出
【发布时间】:2014-11-17 19:57:34
【问题描述】:

出于测试目的,我想创建一个总是崩溃的“假”进程。

由于我使用 Powershell 来执行此操作,因此我正在考虑使用仅引发异常 (throw 'test') 的命令运行另一个 PS 实例。

在一个如此简单的任务上摸索了几分钟后,我发现:

powershell -command "& throw 'test'"

产生错误“不理解抛出”,但是:

powershell -command "& { throw 'test' }"

抛出我想要的异常。

有什么区别?为什么我需要在 throw 周围加上花括号?

【问题讨论】:

    标签: powershell


    【解决方案1】:

    在第一个版本中,您尝试调用一个名为 throw 的程序,因此它失败了。

    如果你只是这样做,它实际上会很好地工作:

    powershell -command "throw 'test'"
    

    在第二个版本中,您使用花括号,因此& 将表达式作为脚本块进行评估,而不是尝试调用程序

    【讨论】:

      猜你喜欢
      • 2021-09-23
      • 2020-04-22
      • 2017-12-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多