【发布时间】:2011-02-16 01:12:09
【问题描述】:
cmdlet 如何知道它何时真正应该调用WriteVerbose(),
WriteDebug()等等?
也许我错过了一些简单的事情,但我找不到答案。所有 cmdlet
到目前为止我看到的实现只是调用WriteVerbose() 没有任何
犹豫。我知道这样做是正确,但它不是有效。
详细模式关闭但 cmdlet 仍在准备时,性能会受到影响
WriteVerbose() 调用的数据,也就是说,一无所有。
换句话说,在 cmdlet 中我希望能够:
if (<VerboseMode>)
{
.... data preparation, sometimes expensive ...
WriteVerbose(...);
}
但我不知道如何获得这个if (<VerboseMode>)。有什么想法吗?
结论: @stej 的答案显示了如何在理论上获得所需的信息。在实践中,这是 hacky 并且不太适合。因此,如果 cmdlet 产生非常昂贵的详细或调试输出,那么引入一个指定详细级别的附加参数看起来是合理的。
【问题讨论】:
-
我不同意你的结论。请参阅我的答案以获得解决方案。
标签: powershell