Powershell vs C#

Aro*_*ron 10 c# powershell

所以在我引用SO纯粹主义者的愤怒之前,我知道何时开发使用Powershell vs C#?.但是我相信从那时起,现有技术发生了变化.

所以首先从最后的Powershell和C#问题中得到的重点是,Powershell是一种解释性语言,而C#是一种编译语言.

但是我觉得随着罗斯林的成熟,这个论点将毫无用处.

那么我为什么要学习Powershell呢?鉴于:

  • C#可以(理论上)在解释环境中运行.
  • C#具有更好的工具支持(例如Resharper)和文档
  • C#有很好的错误检查(编译器)
  • 我已经知道C#

Sha*_*ton 7

我认为人们需要在这个问题上开箱即用.停止尝试将PowerShell与C#进行比较,或者作为替代,它更多地补充它而不是替换它.

我是一名DBA,但越来越多的人发现自己正在做类似开发人员的任务,以便更多地自动化我的工作.我目前正在为我工​​作的公司开发一个评估工具,现在用PowerShell编写.

PowerShell由Microsoft创建,并且越来越受管理员或管理应用程序(SharePoint,Exchange,AD等)的管理员的欢迎.在这种情况下,现在需要学习和使用PowerShell.Microsoft已经声明,任何针对Windows Server的产品都必须具有PowerShell功能,并且GUI界面必须使用下面的PowerShell(找不到它的来源但已阅读并听到过).

我最近一直在阅读这个面向开发人员Windows PowerShell,很有趣的是找出作者在他的开发工作中使用它.最多可以获得电子书并阅读它.

我认为开发人员可以从PowerShell中获益的一些要点(至少我会全职做到这一点):

  1. 它允许您更快地编写程序中较小的任务(例如,遍历文件中的数据,搜索Windows文件系统中的文件等).
  2. 我认为它可以用作部署工具作为一致性.您实际上可以在PowerShell控制台中编译代码,因为它基于并且可以访问.NET结构.
  3. 如前所述,如果您想为帮助台编写一个小程序,比如说Active Directory,您可以使用PowerShell命令行执行命令和任务,而不是尝试绑定到所有.NET类.命令行开关已经具有帮助台用户可以使用的绑定和标准命令.