既然你已经相信Windows PowerShell非常好用,是时候花一些时间学习它了。 任何新技术的挑战包括如何学习它。每个技术都有自己的概念和术语,使其变得很独特,并且明白这些概念通常是你面对的最大难题。 Windows PowerShell的创建者真正懂得其中的难处,添加了一些内置的cmdlet帮助学习PowerShell。
我将在本文中介绍五个cmdlet。 在我们开始之前,先介绍一些基本的PowerShell术语,便于新手入门。 Cmdlet——这是Windows PowerShell的基础,也是产生多数问题的根源。它们就如内部和原生命令,其实不是。
我找到一种最简单的方法……
我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。
我原创,你原创,我们的内容世界才会更加精彩!
【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】
微信公众号
![TechTarget微信公众号二维码](/wp-content/uploads/res/images/spriteimg/ttweixin.jpg)
TechTarget
官方微博
![TechTarget中国官方微博二维码](/wp-content/uploads/res/images/spriteimg/ttweibo.jpg)
TechTarget中国
既然你已经相信Windows PowerShell非常好用,是时候花一些时间学习它了。
任何新技术的挑战包括如何学习它。每个技术都有自己的概念和术语,使其变得很独特,并且明白这些概念通常是你面对的最大难题。
Windows PowerShell的创建者真正懂得其中的难处,添加了一些内置的cmdlet帮助学习PowerShell。我将在本文中介绍五个cmdlet。
在我们开始之前,先介绍一些基本的PowerShell术语,便于新手入门。
Cmdlet——这是Windows PowerShell的基础,也是产生多数问题的根源。它们就如内部和原生命令,其实不是。我找到一种最简单的方法,就是将它们想象成包满代码的小快餐盒,任何地点都可用。
Function——与cmdlet非常类似,除了它们是使用关键工作“功能”产生的以外。
例如:function foo {"I'm Foo"}
Parameter——cmdlet或function的值。
Object——从cmdlet或function返回的条目。对象拥有属性和行为,谈到……
Propertie——描述对象用到的属性。
Method——对象执行的动作。
Variable——用于存储数据的对象。
Pipeline——这个指从一个命令传输对象到另一个的概念。通过使用管道操作"|"完成。
Aliase——给用户提供缩写cmdlet的能力。
ScriptBlock——包含在"{" and "}"里的一块代码。
例如:{Write-Host "This is a ScriptBlock"}
现在我们来分解重要的cmdlet。括号里面的字符表示每个cmdlet的缩写。
Get-Help(help:)——如果你要学习Windows PowerShell,这个cmdlet是基本所需。若你所料,它提供对cmdlet或PowerShell概念的帮助。
如果你想了解更多信息,可以从传输它到Get-Help开始。这会提供一个直接反馈,或者给你能用的(只限PowerShell 2.0)帮助文件清单。Get-Help有三个参数,控制返回数据的数量:Detail、Full与Example。
语句:Get-help
例子:Get-Help Get-Member
Get-Member(gm:)——这可以算是PowerShell最重要的cmdlet。它允许你“发现”给定对象拥有的属性和行为。毕竟,如果不知道属性在哪,你不能准确使用。
语句:<object> | get-member
例子:Get-ChildItem | Get-Member
Get-Command(gcm:)——现在,我确定你看见了模型。 Get-Command仅仅提供命令。这些命令可以是cmdlet、function、aliase和application。
语句:Get-Command –commandtype <type>
例子:Get-Command –commandtype cmdlet
Foreach-Object(%:)——这个cmdlet用于处理管道里的条目。对于管道里的每个对象,这个命令将处理脚本
语句:<object(s)> | foreach-object <scriptblock>
例子:Get-Childitem | foreach-object {Write-Host "Found: " $_.fullname}
Where-Object(?:)——这个类似于Foreach-Object,但它不是简单处理脚本块,而是将脚本块作为某种过滤器使用。如果脚本块的结果是$true,对象可以传输。如果结果是$false,当前脚本将被丢弃。
语句:<object(s)> | where-object <scriptblock>
例子:Get-ChildItem | where-object {$_.Length –gt 10mb}
本文只介绍了少数几个cmdlet,不过对于开始学习Windows PowerShell的新手来说非常实用。
翻译
相关推荐
-
管理员常用Windows PowerShell命令Top25
即使Windows PowerShell已经由来已久,但很多管理员并不愿意主动熟悉PowerShell cmdlet命令行。随着微软扩展了PowerShell的功能,管理员应该对其功能及使用烂熟于心……
-
巧用PowerShell参数防止操作失误
使用PowerShell自动化操作可以帮助你节省大量的时间——或产生问题。幸运的是,巧用PowerShell参数可以防止发生更改脚本意外。
-
Windows Server 2012 R2下如何处理磁盘故障
Windows管理员可以通过Event Viewer日志、Server Manager报告、SCOM的警告对话框或者Windows PowerShell查询等确定Windows Server 2012 R2中的磁盘故障。
-
Windows Server 2016软件定义存储:Storage Spaces Direct介绍
微软在Windows Server 2016 Technical Preview 2中引入了Storage Spaces Direct。这个特性将本地存储扩展为高可用(HA)存储系统。