【问题标题】:VBS vs PowerShell: Which is lighter?VBS 与 PowerShell:哪个更轻?
【发布时间】:2012-03-09 17:56:54
【问题描述】:

如果我需要一个脚本以最小的系统工作量执行,我会选择哪个?

通过查看任务管理器中的进程:

内存(私有工作集)
wscript.exe 2,068K
powershell.exe 33,144K

谢谢。

【问题讨论】:

    标签: performance powershell vbscript automation


    【解决方案1】:

    这里正在进行工作原理的保护。如果机器做的工作更少,那么你必须做更多的工作。如果机器做更多的工作,你就必须做更少的工作。

    我们使用 PowerShell 的理念是,最重要的资源是管理员的时间和注意力,因此我们使用机器资源来提供最佳体验。因此,如果您正在寻找机器上尽可能轻的占用空间,则应将其编码为“C”。 C++ 比这更重,VBS 更重,C# 更重,它们比 PowerShell 更轻。当然,每个人都需要比 PowerShell 更多的努力来产生解决方案。

    因此,归根结底,您最终会做出一系列选择,而您需要做的是决定什么是解决手头问题的正确工具。我们从一开始就明白这一点,因此我们设计 PowerShell 以提供通向 C# => C++ => C 的平滑路径。这使您可以从 PowerShell 开始,如果它太重,您可以过渡到另一种语言而无需重新开始从头开始,就像使用 PERL => C 一样。

    【讨论】:

    • 天啊! Jeffrey Snover 的回答。 +1 用于创建我非常喜欢的语言 :-)
    • “更重”是故意的吗?也许“更重”会传达相同的想法而不会听起来有点尴尬?
    【解决方案2】:

    这显然取决于您需要脚本做什么。 PowerShell 和 vbscript 之间的功能存在巨大差异。 PowerShell 可以利用 .NET 框架的大多数功能,而 vbs 则不能。所以有一些很多事情你根本无法用 VBS 完成。

    如果脚本需要做一些两者都可以完成的事情,通常您可以在 PowerShell 中用更少的代码行来完成相同的事情,这使得脚本更易于维护和分发。有时需要 10-50 行的 VBS 可以通过在 shell 中输入单个 PowerShell 行来完成。

    那么为什么需要轻量级? VBS 可能会占用相对较少的内存这一事实是否权衡了我上面谈到的 PowerShell 的好处? PowerShell 将提高您的工作效率,并允许您完成更多工作,因为它具有强大的功能,并且将花费您更少的时间和精力来完成它。

    【讨论】:

      猜你喜欢
      • 2012-05-28
      • 2013-12-12
      • 2014-07-29
      • 2021-11-04
      • 1970-01-01
      • 1970-01-01
      • 2014-04-02
      • 2013-11-28
      • 2010-10-11
      相关资源
      最近更新 更多