Powershell和VBScript之间的主要区别在于,当使用这种脚本规划新项目时,我会选择哪一种?运行Powershell而不是VBScript有什么优势?
回答
与PowerShell相比,VBScript的功能非常有限。 PowerShell可以访问所有的.NET库,因此您可以利用C#或VB.NET等语言获得任何优势。您还可以加载任何.NET DLL并利用第三方库(如codeplex上的第三方库)。
PowerShell有一些限制,但你很少遇到它们。 Powershell在单线程上运行,所以如果您尝试调用任何创建新线程(如BackgroundWorker)的.NET库,您将遇到问题。也就是说,你不能用VBScript做任何并发处理。在PowerShell中,您至少有后台作业。
PowerShell也是交互式的。这使您可以先在控制台上试用一些东西,然后将它们集成到更复杂的脚本中。
还有一些免费的开发和调试工具可用于PowerShell。它带有一个实际称为ISE的机器。另一个可从Quest的PowerGUI获得。如果你想在VBScript中使用类似的东西,你必须使用类似Visual Studio的东西,并用cscript //X
启动你的脚本,或者使用昂贵的PrimalScript。
与VBscript相比,PowerShell经常允许您以更少的工作做更多的事情。在某些情况下,您可以将数百行的VB脚本数量减少到PowerShell中的数十行。
如果您在某个时候发现自己正在阅读BASH脚本,您可能会感到惊讶,因为在拿起PowerShell之后它有多熟悉。语法相似。将PowerShell代码转换为C#也是很容易的,反之亦然。这很好,因为如果你找不到一个直接使用PowerShell的例子,你可以在C#中找到一个例子,它可以很容易地转换为PowerShell。
Powershell,除非您有充分的理由不这样做,因为这是Microsoft为所有平台上的操作系统和应用程序自动化设计的。不过,您可能需要阅读Microsoft PowerShell站点中的详细信息。它有许多事情,VBScript不会做或很难做到,比如远程执行,安全等。
- 1. 嵌套的If/Else而不是Else If有什么优势?
- 2. 使用bower而不是缩小javascript文件有什么优势?
- 3. 使用核心数据有什么优势? (而不是plist)
- 4. reftype {}有什么优势?
- 5. pathmunge优于grep的优势是什么?
- 6. Kafka优于RabbitMQ的优势是什么?
- 7. 以专用用户身份运行服务有什么优势
- 8. c#应用程序作为服务运行有什么优势?
- 9. 在vm上运行docker有什么优势?
- 10. 在Tomcat + JRuby而不是Mongrel/Passenger上运行Rails应用程序时有什么优势?
- 11. 在控制器中设置变量而不是视图有什么优势?
- 12. 使用类方法而不是实例方法有什么优势吗?
- 13. SVN和Apache - 有没有什么优势?
- 14. 工厂模式的优势是什么?
- 15. 什么是Android的领先优势?
- 16. 什么是JavaCC的优势与ANTLR
- 17. C#4中DLR的优势是什么?
- 18. 链式异常的优势是什么
- 19. 什么是asp.net mvc的优势?
- 20. Silverlight中DLR的优势是什么?
- 21. ASP.NET Webforms的主要优势是什么?
- 22. 键值存储的优势是什么?
- 23. DB2比VSAM有什么优势?
- 24. ASP.NET 3.5 Extensions Preview 2有什么优势?
- 25. 使用NSOutputstream有什么优势?
- 26. Hudson vs使用shellcript有什么优势?
- 27. git比git-svn有什么优势?
- 28. 使用Redux比React有什么优势?
- 29. Digest :: SHA比Digest :: SHA1有什么优势?
- 30. PHP对ASP.NET有什么优势?
真棒问题,我真的需要知道这件事。绝对讨厌一些SO的政策。 – 2014-04-25 21:46:55
这个问题是有建设性的... – 2016-10-06 13:31:36