我玩过 PowerShell V1 的早期 beta 版本之一,但自从它成为“黄金”后就没有使用它。开始使用 PowerShell 的最佳方式是什么?
我应该使用哪个版本的 PowerShell(V1.0 与 2.0 CTP)?你用 PowerShell 做什么?是否有任何工具可以更轻松地使用 PowerShell(即开发环境)?
我玩过 PowerShell V1 的早期 beta 版本之一,但自从它成为“黄金”后就没有使用它。开始使用 PowerShell 的最佳方式是什么?
我应该使用哪个版本的 PowerShell(V1.0 与 2.0 CTP)?你用 PowerShell 做什么?是否有任何工具可以更轻松地使用 PowerShell(即开发环境)?
对于学习 PowerShell,有很多很棒的资源
对于 IDE 风格的环境,您有 PowerShell Analyzer(免费)和 PowerGUI(免费)、PowerShell Plus(商业)、PrimalScript(商业)和 Admin Script Editor(商业)。
我尽我所能使用 PowerShell。现在,我正在研究Psake,一个基于 PowerShell 的构建脚本环境。我使用 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 发现可用命令
例如,要查找所有“get”命令,只需键入:
*Get-命令获取**
例如,要查找所有“set”命令,只需键入:
*获取命令集**
第 2 步 - 了解如何使用 Get-Help 使用每个命令
要获得有关 Get-Command 命令行开关类型的基本帮助:
获取帮助获取命令
要获取更多信息,请键入:
Get-Help 获取命令 -full
第 3 步 - 使用 Get-Member 发现对象属性和方法
Powershell 是一种面向对象的脚本语言。一切都是具有属性和方法的成熟 .Net 对象。
例如,要获取 Get-Process commandlet 类型发出的对象的属性和方法:
获取进程 | 获取会员
您还需要了解一些其他概念,例如管道和正则表达式,但如果您已经编写过一些脚本,那么这些应该已经很熟悉了。
我用它做什么?
两件事情:
我刚刚找到了这本免费的电子书,链接自 Windows PowerShell 博客:
投票给PowerShell in Action算我一个。那里也有很多博客,请查看//\O//的博客、The Huddled Masses和JB 的 Powershell (SQL),它们可以追溯到 shell 并且拥有大量优秀的脚本和要查看的片段。
找到您需要解决的问题,然后坐下来使用 PowerShell 解决问题,直到问题得到解决。
不要屈服并以另一种方式去做。然后找到另一个,另一个,等等。一开始你会花更长的时间,但你会积累知识以供将来使用。以及一个可供未来使用的脚本库。有一天你会转过身来,意识到你现在“了解”了 PowerShell。
这很棒。:)
Ars Technica 教程有点过时,但非常适合让您开始使用 PowerShell 。
我也会支持检查PowerGUI的建议。
生产环境不支持 PowerShell CTP,从现在到发布时会有很多变化。我建议关注许多 PowerShell 博客(不要忘记 PowerScripting 播客)。关于这个主题的好书不乏。如果您想花一点钱,SAPIEN Technologies 在 www.scriptingoutpost.com 上有一些自定进度的学习材料。我相信 Don Jones 已经为 CBT Nuggets 制作了一系列的训练视频。您可能可以在集中技术.com 上找到更多信息。
我认为养成自动化小任务的习惯是在 PowerShell 中训练自己的好方法。例如,编写一个一次性脚本,而不是手动进行看起来很繁琐的文本处理。前几次实际上可能需要更长的时间,但是随着您变得更快并建立一个有用的片段库,您可以将它们链接在一起,您可以为自己节省大量时间。
PowerShell 和 PowerGUI 上有DNRtv。还有.NET Rocks!关于这些工具的剧集。
一个叫 Guy Thomas 的小伙子对 PowerShell 做了一些很好的介绍。
我会立即启动它。我所说的即时的意思是,如果你不知道该怎么做,那就开始处理你的真实案例并在网络或这个网站上寻求帮助。当然,如果您先花一些时间学习一些基础知识,那将是非常有益的。这就是使用 PowerShell 的原因。
我有一些关于 PowerShell 的博客文章,尤其是我最近发布的一个真实案例的 3 系列文章。搜索 davidchuprogramming 或前往此处。祝您的 PowerShell 之旅好运。
关于IDE问题:
至少在我的计算机上,有一个基本的 IDE,它已经安装了 PowerShell。
它被标记为“WindowsPowerShell ISE”,可让您执行诸如同时打开多个控制台会话和多个脚本文件之类的操作...一组用于脚本的选项卡,一组用于控制台会话,因此您可以根据需要来回单击.
PowerGUI 本身就是一个很大的帮助。IntelliSense功能卖给了我,然后我发现了一些非常有用的附加组件。
至于资源:
免费电子书:
Windows PowerShell 说明书
掌握 PowerShell
PowerShell 更深入的了解
介绍视频:
http://powergui.org/entry.jspa?externalID=2278&categoryID=361