关于脚本编制:如何开始使用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!有关这些工具的剧集。


    推荐阅读

      linux把命令变成脚本?

      linux把命令变成脚本?,系统,环境,工作,脚本,命令,信息,基础,代码,文件,变量,

      linux命令查的是啥?

      linux命令查的是啥?,系统,时间,信息,状态,命令,工具,名称,标准,软件,情况,Lin

      linux脚本命令输信息?

      linux脚本命令输信息?,系统,信息,代码,脚本,数据,工具,发行,命令,变量,文件,l

      linux上启动脚本命令?

      linux上启动脚本命令?,服务,状态,系统,代码,脚本,工作,周期性,命令,文件,方

      linux下编写脚本命令?

      linux下编写脚本命令?,代码,时间,工具,标准,系统,实战,平台,最新,网站,文件,l

      linux定时器脚本命令?

      linux定时器脚本命令?,系统,代码,时间,工具,工作,定期,周期性,异常,任务,脚

      linux停止脚本命令行?

      linux停止脚本命令行?,系统,工作,平台,命令,基础,第一,环境,信息,终端,程序,

      linux命令运行脚本?

      linux命令运行脚本?,代码,系统,工作,设计,状态,命令,脚本,文件,目录,终端,运

      linux脚本赋权限命令?

      linux脚本赋权限命令?,系统,档案,工作,命令,工具,脚本,权限,文件,程序,文件

      linux关闭脚本命令?

      linux关闭脚本命令?,系统,服务,状态,命令,档案,暂停,软件,工具,数据,电脑,lin

      linux激活脚本命令?

      linux激活脚本命令?,系统,信息,环境,脚本,命令,代码,服务,工具,标准,官网,如

      linux循环命令脚本?

      linux循环命令脚本?,代码,系统,增长,工具,官网,项目,流程,数据,数字,底部,lin

      执行脚本命令linux?

      执行脚本命令linux?,工作,脚本,服务,命令,文件,方法,权限,目录,用户,可能会,L

      停止linux脚本命令行?

      停止linux脚本命令行?,状态,电脑,命令,传播,检测,终端,模式,指令,文件,进程,l

      linux执行命令脚本?

      linux执行命令脚本?,代码,工作,底部,系统,状态,命令,脚本,暂停,情况,文件,lin

      linux重启脚本命令?

      linux重启脚本命令?,系统,代码,脚本,软件,周期性,百分比,时间,检测,服务,状

      linux脚本编辑命令行?

      linux脚本编辑命令行?,系统,工作,命令,脚本,网上,设计,环境,业务,地址,时间,l

      linux重启脚本的命令?

      linux重启脚本的命令?,系统,服务,脚本,官网,底部,设备,代码,软件,百分比,命

      linux清空脚本命令?

      linux清空脚本命令?,系统,信息,命令,数据,文件,文件夹,屏幕,终端,目录,回收

      启动脚本linux命令?

      启动脚本linux命令?,系统,服务,代码,工作,脚本,官网,密码,信息,底部,周期性,l