关于脚本编制:如何开始使用PowerShell?

关于脚本编制:如何开始使用PowerShell?

How to get started with PowerShell?

我使用的是PowerShell V1的早期Beta版本之一,但自从它变成"金"版以来就没有使用过。 开始使用PowerShell的最佳方法是什么?

我应该使用哪个版本的PowerShell(V1.0和2.0 CTP)? 您使用PowerShell做什么? 有没有什么工具可以使使用PowerShell更加容易(即开发环境)?


对于学习PowerShell,有很多很棒的资源

  • Technet虚拟实验室(Windows PowerShell简介)
  • PowerShellCommunity.org-论坛,博客,脚本存储库
  • irc.freenode.net上的powershell
  • PowerShell播客-PowerScripting.net和Get-Scripting.blogspot.com
  • 对于IDE风格的环境,您具有PowerShell Analyzer(免费)和PowerGUI(免费),PowerShell Plus(商业),PrimalScript(商业)和Admin Script Editor(商业)。

    我会尽一切可能使用PowerShell。现在,我正在研究基于PowerShell的构建脚本环境Psake。我使用if管理我的Active Directory,Hyper-V,Twitter,一些键盘自动化(在winforms应用程序中托管PowerShell来捕获击键)以及大量其他内容。我必须签出的另一个不错的项目是PSExpect以进行测试。我还将它用于数据库访问-监视应用程序对数据库中的行所做的更改。它还集成到我的网络监视解决方案中。

    我还希望将PowerShell用作我正在研究的项目的脚本引擎。

    编辑:
    如果您只是学习PowerShell,我将重点介绍V1。当您感觉更舒适时,请看一下CTP,但是从CTP到V2实际发布的版本,可能会有太多变化,以至于无法成为您的学习工具。
    版本2已发布,可从XP SP3,Server 2003,Vista和Server 2008中获得,并在Win7和Server 2008 R2的包装箱中提供。您在V1上学到的内容仍然可以为您服务,但是现在我将重点介绍V2,因为它具有出色的功能集。

    祝好运!


    一一回答您的问题。

    获取CTP v2.0。我使用过1.0和2.0,但在更高版本中未发现任何稳定性问题,它具有更多功能。

    最好的入门方法是学习三个基本命令并开始使用它。

    步骤1-使用Get-Command发现可用命令

    例如,要查找所有"获取"命令,只需键入:

    *获取命令获取**

    例如,要查找所有"设置"命令,只需键入:

    *获取命令集**

    步骤2-了解如何使用Get-Help使用每个命令

    要获取有关Get-Command小命令的基本帮助,请输入:

    获取帮助获取命令

    要获取更多信息,请输入:

    获取帮助获取命令-完整

    步骤3-使用Get-Member发现对象属性和方法

    Powershell是一种面向对象的脚本语言。一切都是具有属性和方法的成熟的.Net对象。

    例如,要获取由Get-Process Commandlet类型发出的对象的属性和方法:

    获取流程|获得会员

    您还需要了解其他一些概念,例如管道和正则表达式,但是如果您已经完成了一些脚本编写,那么这些概念应该已经很熟悉了。

    我用它做什么?

    两件事情:

  • 处理来自大规模分布式网格应用程序的日志文件。为此,它被证明是非常有价值和强大的。
  • .Net类的快速测试。

  • 有许多PowerShell工具,例如,

    • PowerGUI

    • PowerShell Plus(非免费)

    • 《 PowerShell in Action》是一本广受好评的书。

    Powershell团队有一个博客。


    我刚刚找到了从Windows PowerShell博客链接的这本免费电子书:

    掌握PowerShell


    找到您需要解决的问题,并坐下来使用PowerShell进行操作,直到问题解决。

    不要屈服并以另一种方式做。 然后找到另一个,另一个,等等。一开始您将花费更多的时间,但是您将积累知识以备将来使用。 以及将来可以使用的脚本库。 有一天,您将转身并意识到您现在"了解" PowerShell。

    这很棒。 :)


    请投票支持PowerShell in Action。也有很多博客,请查看// / O //的博客The Huddled Masses和JB的Powershell(SQL),它们回到了Shell的前头,并且有许多不错的脚本和片段来看看。


    Ars Technica教程有些陈旧,但是非常适合使用PowerShell入门。

    我还建议您查看PowerGUI。


    检查PowerGUI,PowerShell GUI和脚本编辑器。我还没有用过,但是我看了示例视频,看起来非常不错。此外,该站点还包含带有示例脚本的库。

    这是另一个出色的PowerShell参考。


    我认为养成自动执行小任务的习惯是在PowerShell中进行自我训练的好方法。例如,编写一个一次性脚本,而不是手工完成繁琐的文本处理工作。实际上,前几次可能会花费更长的时间,但是随着您变得更快,并建立了有用的代码片段库,可以将它们链接在一起,可以节省很多时间。


    在生产环境中不支持PowerShell CTP,从现在到发布时间之间会有很多变化。我建议关注许多PowerShell博客(不要忘记PowerScripting播客)。不乏有关该主题的好书。如果您想花点钱,SAPIEN Technologies可以在www.scriptingoutpost.com上提供一些自定进度的学习材料。我相信Don Jones为CBT掘金队做了一系列培训视频。您可能会在浓缩技术网站上找到更多信息。


    PowerGUI本身就是一个很大的帮助。 IntelliSense功能卖给了我,然后我发现了一些非常有用的有用加载项。

    就资源而言:

    免费电子书:

    • Windows PowerShell食谱

    • 掌握PowerShell

    • PowerShell更深入的了解

    入门视频:

    http://powergui.org/entry.jspa?externalID=2278&categoryID=361


    关于IDE问题:

    有一个基本的IDE,至少在我的计算机上已经安装了PowerShell。

    它被标记为" WindowsPowerShell ISE",可让您执行一些操作,例如同时打开多个控制台会话和几个脚本文件...一组脚本选项卡,一组控制台会话,因此您可以根据需要来回单击。


    我会马上开始的。我的意思是即时开始处理您的实际案件,如果您不知道要怎么做,请在网络或本网站上寻求帮助。当然,如果您花一些时间先学习一些基础知识,这将非常有益。这就是进入PowerShell的过程。

    我有一些关于PowerShell的博客文章,特别是关于我最近发布的一个真实案例的3系列文章。搜索davidchuprogramming或转到此处。祝您在PowerShell旅途中一切顺利。


    名为Guy Thomas的一章很好地介绍了PowerShell。


    在PowerShell和PowerGUI上有DNRtv。还有.NET Rocks!有关这些工具的剧集。


    推荐阅读