明霞山资源网 Design By www.htccd.com
还记得当年怎样在PowerShell中动态创建对象吧?今天要分享的方法不敢自诩高大上,但也足以让New-Object感到汗颜。
背景
在System Center Operation Manager中有个Management Pack,叫做:“Microsoft.SystemCenter.OperationsManager.SummaryDashboard”。在该MP中有个Discovery叫做:“Collect agent configurations”。该工作流中用到了一段脚本,其中使用了New-Module命令。
New-Module就是在内存中动态生成一个Module组件。用它来自定义对象有点大材小用了。
演习
$PLA = New-Module {
$名称 = ‘中国人民解放军'
$军区 = @('沈阳军区','北京军区','济南军区','南京军区','广州军区','成都军区','兰州军区')
$兵种 = @('海军','空军','第二炮兵')
function 保卫党
{
return $true
}
function 保卫人民
{
return $null
}
function 抗洪抢险
{
return $true
}
function 抗震救灾
{
return $true
}
function 确认兵种
{
param($某兵种)
if ($this.兵种.Contains($某兵种)){
return $true
}
return $false
}
Export-ModuleMember -Variable * -Function *
} -AsCustomObject
PS> $PLA
兵种 军区 名称
-- -- --
{海军, 空军, 第二炮兵} {沈阳军区, 北京军区, 济南军区, 南京军区...} 中国人民解放军
PS> $PLA.确认兵种(‘陆军')
False
PS> $PLA | Get-Member
TypeName: System.Management.Automation.PSCustomObject
Name MemberType Definition
---- ---------- ----------
Equals Method bool Equals(System.Object obj)
GetHashCode Method int GetHashCode()
GetType Method type GetType()
ToString Method string ToString()
兵种 NoteProperty System.Object[] 兵种=System.Object[]
军区 NoteProperty System.Object[] 军区=System.Object[]
名称 NoteProperty System.String 名称=中国人民解放军
保卫人民 ScriptMethod System.Object 保卫人民();
保卫党 ScriptMethod System.Object 保卫党();
抗洪抢险 ScriptMethod System.Object 抗洪抢险();
抗震救灾 ScriptMethod System.Object 抗震救灾();
明霞山资源网 Design By www.htccd.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
明霞山资源网 Design By www.htccd.com
暂无评论...
P70系列延期,华为新旗舰将在下月发布
3月20日消息,近期博主@数码闲聊站 透露,原定三月份发布的华为新旗舰P70系列延期发布,预计4月份上市。
而博主@定焦数码 爆料,华为的P70系列在定位上已经超过了Mate60,成为了重要的旗舰系列之一。它肩负着重返影像领域顶尖的使命。那么这次P70会带来哪些令人惊艳的创新呢?
根据目前爆料的消息来看,华为P70系列将推出三个版本,其中P70和P70 Pro采用了三角形的摄像头模组设计,而P70 Art则采用了与上一代P60 Art相似的不规则形状设计。这样的外观是否好看见仁见智,但辨识度绝对拉满。