标准化单一的 Windows 脚本语言

标准化单一的 Windows 脚本语言

我不太确定这在 StackOverflow 上是否会更好,如果您认为它在那里更合适,请随意移动它。

无论如何,回到这个问题...

现状
我们目前混合使用 VBScript、DOS 批处理文件和少量 PowerShell 脚本来执行业务中的各种任务。

任务范围从查明谁通过 IP 登录到特定机器到相当复杂的文本处理和数据库查询(SQL Server 2005/2008)

VbScript 确实不是一种很好的语言,尽管它确实有相当好的调试支持,PowerShell 要好得多,但(免费)调试支持相当简陋,关于批处理文件的说法越少越好

问题
我不想引发争论(请只发表客观评论!)我想标准化一种脚本语言,要求如下:-

  • 必须与 Windows 兼容
  • 良好的调试支持(像 Visual Studio 或 Eclipse 这样好的东西就很完美了,我会选择像当前 VBScript 调试器这样好的东西)
  • 良好的异常管理
  • 良好的内存管理(垃圾收集)
  • 良好支持连接数据库(SQL Server)
  • COM 支持将是一个优势
  • 最好是轻量安装(或者不安装),这样我们就可以将其放在服务器上而不会破坏任何东西
  • 绩效不是关键,这些工作大多是夜班工作
  • 对于主要使用 C#/Java/VBScript/VBA 的公司来说,学习起来很容易

我对你的想法/建议非常感兴趣

答案1

PowerShell 2,毫无疑问。我认为它满足了您的所有要求,并且其集成脚本环境具有语法高亮功能,并且具有良好的调试支持,包括断点和分步执行。

答案2

除非你正在寻找 wmi 和 dotnet 的具体信息,否则我发现 python 是适用于所有平台的出色脚本工具。它确实满足了你的几乎所有要求

否则,我认为 powershell 是可行的方法,尽管它确实需要安装 dotnet 框架。

答案3

我不喜欢 ISE,但我对 Visual Studio IDE 在其他开发方面很满意。有些人喜欢免费的 PowerGUI 替代品:http://www.powergui.org。它似乎具有类似 Intellisense 的功能。

我能想到的关于 PowerShell 的唯一反对意见是它需要框架,并且需要 3.5 框架才能使用一些 V2 高级功能。如果您需要将其部署到数百或数千台机器上,那么它就不是一个轻量级组件。

答案4

我们已经使用 VBScript 多年了,直到最近才开始研究 PowerShell(V2)。VBScript 有其缺点,但它为我们提供了良好的服务,所以我看不出有什么理由放弃我们过去对它的投资。另一方面,PowerShell 将成为 Windows 脚本语言标准,支持肯定会变得更好。所以,对我们来说,未来几年它将是一个混合脚本环境。

顺便说一句,当我查看您的需求列表时,PowerShell 轻松满足了除调试支持和异常管理之外的所有需求(但 VBScript 错误处理也不是很好)。此外,PowerShell 相对于 VBScript 的一大优势是它可以访问 .Net Framework。

相关内容