【问题标题】:How to get started with PowerShell? [closed]如何开始使用 PowerShell? [关闭]
【发布时间】:2010-09-07 04:59:19
【问题描述】:

我玩过 PowerShell V1 的早期测试版之一,但自从它成为“黄金”后就没有使用它。开始使用 PowerShell 的最佳方式是什么?

我应该使用哪个版本的 PowerShell(V1.0 与 2.0 CTP)?你用 PowerShell 做什么?是否有任何工具可以更轻松地使用 PowerShell(即开发环境)?

【问题讨论】:

  • 这真的应该分解成单独的问题,尤其是关于 IDE 的最后一个问题。

标签: powershell scripting


【解决方案1】:

关于IDE问题:

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

它被标记为“WindowsPowerShell ISE”,可让您执行诸如同时打开多个控制台会话和多个脚本文件之类的操作...一组用于脚本的选项卡,一组用于控制台会话,因此您可以单击返回并按需提供。

【讨论】:

    【解决方案2】:

    投票给PowerShell in Action。那里也有很多博客,请查看//\O// 的博客、The Huddled Masses 和JB's Powershell (SQL),它们使用 shell 并拥有大量优秀的脚本和 sn- ps来看看。

    【讨论】:

      【解决方案3】:

      找到您需要解决的问题,然后坐下来使用 PowerShell 解决问题,直到问题得到解决。

      不要屈服并以另一种方式去做。然后找到另一个,另一个,等等。一开始你会花更长的时间,但你会积累知识以供将来使用。以及一个可供未来使用的脚本库。有一天你会转过身来,意识到你现在“了解”了 PowerShell。

      太棒了。 :)

      【讨论】:

        【解决方案4】:

        PowerGUI 本身就是一个很大的帮助。 IntelliSense 功能向我推荐了它,然后我发现了一些非常有用的附加组件。

        就资源而言:

        免费电子书:

        • Windows PowerShell 说明书

        • 掌握 PowerShell

        • PowerShell 更深入的了解

        介绍视频:

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

        【讨论】:

          【解决方案5】:

          我会立即启动它。我所说的即时的意思是,如果您不知道该怎么做,就开始处理您的真实案例并在网络或本网站上寻求帮助。当然,如果您先花一些时间学习一些基础知识,那将是非常有益的。这就是使用 PowerShell 的原因。

          我有一些关于 PowerShell 的博客文章,尤其是我最近发布的一个真实案例的 3 系列文章。搜索 davidchuprogramming 或转到 here。祝您的 PowerShell 之旅好运。

          【讨论】:

            【解决方案6】:

            我认为养成自动执行小任务的习惯是在 PowerShell 中训练自己的好方法。例如,编写一个一次性脚本,而不是手动进行看起来很繁琐的文本处理。前几次实际上可能需要更长的时间,但随着您的速度越来越快并建立一个有用的 sn-ps 库,您可以将它们链接在一起,您可以为自己节省大量时间。

            【讨论】:

            • 我同意你的想法,是的,我们可以从自动化日常活动的小任务开始,这是在 PowerShell 中训练自己的好方法。在不打开命令提示符的情况下从查找 IP 开始最简单的事情。我们可以从任何简单的网站开始,例如 PS 教程 powershelltutorial.net 或 computerpeformance.co.uk
            【解决方案7】:

            一个叫 Guy Thomas 的小伙子是 some good introductions to PowerShell。

            【讨论】:

              【解决方案8】:

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

              【讨论】:

                【解决方案9】:

                有许多 PowerShell 工具,例如,

                还有 Powershell 团队 has a blog。

                【讨论】:

                • 投票支持 PowerShell in Action(还是 PowerShell Inaction?),非常好。 Windows PowerShell Cookbook 也是一本不错的书,从一个非常不同的角度来解决问题。
                【解决方案10】:

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

                1. Technet 虚拟实验室 (Introduction to Windows PowerShell)
                2. PowerShellCommunity.org - 论坛、博客、脚本存储库
                3. irc.freenode.net 上的 powershell

                4. PowerShell 播客 - PowerScripting.net 和 Get-Scripting.blogspot.com

                对于 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,因为它具有更出色的功能集。

                祝你好运!

                【讨论】:

                • 据我了解,V1 更多是面向开发人员的版本,而 V2 更面向 IT,对于 V2,人们不必通过打开 Visual 来弄脏自己的手Studio 以创建更复杂的 cmdlet。
                • @Sung V1 就是这样,第一个版本。 PowerShell 背后的理念一直是以面向任务的方式显示命令。 V2 确实使具有高级功能的管理员更容易扩展功能。
                • @Sung 我希望每次发布都能看到更好的东西! :)
                • 作为标记最高投票答案的更新——V2 于 09 年 10 月末秘密发布,作为 Windows 管理框架核心的一部分(适用于 XP 和所有更高的操作系统版本)—— - support.microsoft.com/kb/968929
                【解决方案11】:

                一一回答你的问题。

                获取 CTP v2.0。我用过1.0和2.0,没有发现后面版本有任何稳定性问题,还有更多functionality。

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

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

                例如,要查找所有“get”命令,您只需键入:

                *Get-Command get**

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

                *获取命令集**

                第 2 步 - 了解如何通过 Get-Help 使用每个命令

                要获得有关 Get-Command 命令行开关类型的基本帮助:

                Get-Help Get-Command

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

                Get-Help Get-Command -full

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

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

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

                获取进程 |获取会员

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

                我用它做什么?

                两件事:

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

                【讨论】:

                • 我对 .NET 类进行了第二次快速测试。能够在交互式脚本环境 (REPL) 中进行探索是天赐之物。当然也总是阅读文档......
                【解决方案12】:

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

                Mastering PowerShell

                【讨论】:

                • +1 作为其出色的“PowerShell 入门”资源!
                【解决方案13】:

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

                【讨论】:

                  【解决方案14】:

                  Ars Technica tutorial 有点过时,但非常适合让您开始使用 PowerShell。

                  我也赞同查看PowerGUI 的建议。

                  【讨论】:

                    【解决方案15】:

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

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

                    【讨论】:

                      猜你喜欢
                      • 2013-11-05
                      • 2011-12-03
                      • 2011-02-27
                      • 2011-11-06
                      • 1970-01-01
                      • 1970-01-01
                      • 1970-01-01
                      • 2013-05-25
                      相关资源
                      最近更新 更多