PowerShell使用hash表作为属性来创建对象


关键词

PowerShell使用hash表作为属性来创建对象

摘要

PowerShell使用hash表作为属性来创建对象

在PowerShell中,对象是一个绕不开的东西。而要创建一个对象也有多种方法,今天介绍一种使用hash表来定义一组属性,然后用这组属性去创建对象的方法。
我们先来定义一个hash表,变量名为$property:
$property=@{
   User = $env:Username
   BIOS = (Get-WmiObject Win32_BIOS).Version
   OS = (Get-WmiObject Win32_OperatingSystem).Caption
   ID = 3
}

PowerShell使用hash表作为属性来创建对象

在PowerShell中,对象是一个绕不开的东西。而要创建一个对象也有多种方法,今天介绍一种使用hash表来定义一组属性,然后用这组属性去创建对象的方法。
我们先来定义一个hash表,变量名为$property:
$property=@{
   User = $env:Username
   BIOS = (Get-WmiObject Win32_BIOS).Version
   OS = (Get-WmiObject Win32_OperatingSystem).Caption
   ID = 3
}
#为什么是这几个属性大家就不要纠结了,我也是从网上抄来的。反正我们就是想有一组属性和它的对应的值就行了。

#下面这句就是创建一个新对象,类型为PSObject(顾名思义就是PowerShell Object,呵呵),属性信息就来源于$property这个哈希表。
#当然,既然是一个对象,大家可能会想到方法。呵呵,这个对象暂时没有方法。
$myObj = New-Object -TypeName PSObject -Property $property
$myObj

这样我们就得到了一个$myObj对象,我们可以通过$myObj来输入它的所有属性值,也可以通过 $myObj | Select-Object User,OS来输出指定的属性。

另外要说明一点的就是,刚才$property定义的哈希表是无序的,如果想让它有序,则应该使用如下方式来实现:
$property=[Ordered]@{
   User = $env:Username
   BIOS = (Get-WmiObject Win32_BIOS).Version
   OS = (Get-WmiObject Win32_OperatingSystem).Caption
   ID = 3
}
不过,这个[Ordered]用户貌似只有在PowerShell3.0中才能使用。OK,洪哥祝大家使用PowerShell愉快!

 

要饭二维码

洪哥写文章很苦逼,如果本文对您略有帮助,可以扫描下方二维码支持洪哥!金额随意,先行谢过!大家的支持是我前进的动力!

文章的版权


如果您在服务器运维、网络管理、网站或系统开发过程有需要提供收费服务,请加QQ:8771947!十年运维经验,帮您省钱、让您放心!
亲,如果有需要,先存起来,方便以后再看啊!加入收藏夹的话,按Ctrl+D

« PowerShell定期FTP上传文件 PowerShell计算文件夹下的文件个数 »