欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Powershell小技巧之使用Update-TypeData扩展类型系统

程序员文章站 2022-04-19 11:04:30
脚本 update-typedata -typename 'system.datetime' -membername '时辰' -membertype 'scri...

脚本

update-typedata -typename 'system.datetime' -membername '时辰' -membertype 'scriptproperty' -value {
  $timealiasarray='子丑寅卯辰巳午未申酉戌亥'
  $hour = $this.hour
  [int]$index=0
  if($hour -eq 22){ $index=11 }
  else{
    $index=[math]::floor( ( $hour+1 ) % 23 / 2 )
     }
 return $timealiasarray[ $index ] + "时"
}

演示

上面的命令执行后,datetime就多了一个属性,我们来验证下:

ps> (get-date).时辰
子时
ps> $t=get-date -hour 17
ps> $t.时辰
酉时

总结

update-typedata与add-member相比,前者扩展的类型,后者扩展的实例。
如何永久扩展类型,可以放在profile文件中,也可以直接修改ets文件。