我玩过PowerShell V1的早期测试版之一,但由于它变成了“黄金”,所以没有使用它。开始使用PowerShell的最佳方法是什么?
我应该使用哪个版本的PowerShell(V1.0 vs 2.0 CTP)?你在使用PowerShell做什么用途?是否有任何工具可以使PowerShell更容易使用(即开发环境)?
答案 0 :(得分:49)
为了学习PowerShell,有很多很棒的资源
对于IDE样式环境,您可以使用PowerShell Analyzer(免费)和PowerGUI(免费),PowerShell Plus(商业版),PrimalScript(商业版)和管理脚本编辑器(商业版)。
我尽我所能使用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,因为有一个优秀的功能集。
答案 1 :(得分:23)
逐一回答您的问题。
获取CTP的v2.0。我已经使用了1.0和2.0,并且没有发现更高版本的稳定性问题,而且它有更多functionality。
入门的最佳方式是学习 三个 基本命令并开始使用它。
第1步 - 使用Get-Command
发现可用命令例如,要查找所有“get”命令,只需键入:
即可* Get-Command get **
例如,要查找所有“set”命令,只需键入:
* Get-Command set **
第2步 - 了解如何使用Get-Help
使用每个命令获取有关Get-Command命令行开关类型的基本帮助:
Get-Help Get-Command
获取更多信息类型:
Get-Help Get-Command -full
第3步 - 使用Get-Member
发现对象属性和方法Powershell是一种面向对象的脚本语言。一切都是具有属性和方法的完全成熟的.Net对象。
例如,获取Get-Process命令行管理类型发出的对象的属性和方法:
Get-Process |获取会员
您需要了解一些其他概念,例如管道和正则表达式,但如果您已经编写了一些脚本,那么这些概念应该已经很熟悉了。
我使用它的原因是什么?
两件事:
答案 2 :(得分:17)
答案 3 :(得分:6)
我刚刚发现这个免费的电子书,链接自Windows PowerShell博客:
答案 4 :(得分:4)
以 PowerShell in Action 的投票结算我。那里还有很多博客,请查看//\O//的博客,The Huddled Masses和JB's Powershell(SQL),他们会回到shell并且有空白良好的脚本和要看的片段。
答案 5 :(得分:4)
找到您需要解决的问题,然后坐下来使用PowerShell进行修复,直到修复为止。
不要屈服并以另一种方式行事。然后找另一个,另一个,等等。你会在一开始就采取更长的方式,但你将建立知识,以便继续使用。以及从未来开始的脚本库。有一天你会转过身来意识到你现在“知道”PowerShell。
太棒了。 :)
答案 6 :(得分:2)
答案 7 :(得分:2)
Ars Technica tutorial有点陈旧,但非常适合让您使用PowerShell进行操作。
我还会提出检查PowerGUI的建议。
答案 8 :(得分:1)
在生产环境中不支持PowerShell CTP,从现在到它发布的时间,很多都会发生变化。我建议关注许多PowerShell博客(不要忘记PowerScripting播客)。这个主题并不缺少好书。如果您想花一点钱,SAPIEN Technologies在www.scriptingoutpost.com上提供了一些自定进度的学习资料。我相信Don Jones已经为CBT Nuggets做了一系列培训视频。您可以在concenttechnology.com上了解更多信息。
答案 9 :(得分:1)
我认为养成自动化小任务的习惯是在PowerShell中训练自己的好方法。例如,编写一次性脚本而不是手工执行繁琐的文本处理。实际上,前几次可能需要更长时间,但随着您的速度越来越快,并建立了一个可以链接在一起的有用片段库,您可以节省很多时间。
答案 10 :(得分:0)
PowerShell和PowerGUI上有DNRtv个。关于这些工具也有.NET Rocks!集。
答案 11 :(得分:0)
一个叫Guy Thomas的小伙伴some good introductions to PowerShell。
答案 12 :(得分:0)
我会在飞行中启动它。我在飞行中的意思是,如果您不知道该怎么做,只需开始处理您的真实案例并在网络或本网站上寻求帮助。当然,如果你花一些时间先学习一些基础知识,这将是非常有益的。这就是PowerShell的基础。
我在PowerShell上有一些博客文章,特别是我最近发布的一个真实案例的3连续剧。搜索davidchuprogramming或转到here。祝你的PowerShell之旅顺利。
答案 13 :(得分:0)
关于IDE问题:
有一个基本的IDE,至少在我的电脑上已经安装了PowerShell。
它被标记为“WindowsPowerShell ISE”,并允许您执行诸如同时打开多个控制台会话和多个脚本文件之类的操作...脚本的一组选项卡,一组用于控制台会话,因此您可以单击返回和根据需要。
答案 14 :(得分:0)
PowerGUI本身就是一个很大的帮助。 IntelliSense功能将我卖给了我,然后我找到了一些非常好用的附加功能。
就资源而言:
免费电子书:
Windows PowerShell Cookbook
掌握PowerShell
PowerShell更深入的了解
介绍视频:
http://powergui.org/entry.jspa?externalID=2278&categoryID=361