powershell: 判断PSObject中是否有指定property的靠谱方法

如何判断一个PSObject中是否定义指定名称的属性,下面的代码中举出了三个方法

$test=New-Object PSObject -Property @{
    compiler=$null
    }
#方法一(不完全靠谱)    
$test.compiler -ne $null
#方法二
(Get-Member -inputobject $test -name "compiler" ) -ne $null
#方法三
($test.PSobject.Properties.name -match "compiler")

上面三个方法, 方法一虽然最简单却不完全靠谱,因为如果compiler是$null时,返回结果是错的。 靠谱的办法是二和三, 而方法三要求powerShell 3.0以上的版本才有效

参考:

https://stackoverflow.com/questions/26997511/how-can-you-test-if-an-object-has-a-specific-property

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏技术记录

Protobuf3语法详解

4705
来自专栏androidBlog

Rxjava 2.x 源码系列 - 变换操作符 Map(上)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/gdutxiaoxu/article/de...

412
来自专栏二进制文集

JDK源码分析 异常

对于JDK源码分析的文章,仅仅记录我认为重要的地方。源码的细节实在太多,不可能面面俱到地写清每个逻辑。所以我的JDK源码分析,着重在JDK的体系架构层面,具体源...

834
来自专栏大闲人柴毛毛

Java异常体系中的秘密

相信大家每天都在使用Java异常机制,也相信大家对try-catch-finally执行流程烂熟于胸。本文将介绍Java异常机制的一些细节问题,这些问题虽然很...

31810
来自专栏QQ会员技术团队的专栏

有没有人告诉你—写时拷贝的真相

作者简介:梁少华,QQ动漫后台开发,腾讯高级工程师。从事后台开发4年多,参与过QQ秀、手Q红点系统、手Q游戏公会、QQ动漫等项目,有丰富的后台架构经验,擅长海...

23610
来自专栏码字搬砖

JVM内存模型之方法区

内容 主要用来存放已被虚拟机加载的类信息、常量、静态变量、即时编译器编译后的代码等数据。JDK8之前又被称为永久带 (Permanent Generatio...

682
来自专栏纯洁的微笑

Java8内存模型—永久代(PermGen)和元空间(Metaspace)

根据 JVM 规范,JVM 内存共分为虚拟机栈、堆、方法区、程序计数器、本地方法栈五个部分。

742
来自专栏互联网开发者交流社区

深入.NET平台和C#编程

1-1:Microsoft.NET框架概述 a.Microsoft.NET介绍 .NET的战略目标是在任何时候(when),任何地方(where)任何工具...

1421
来自专栏everhad

Android内存泄漏分享

内容概述 内存泄漏和内存管理相关基础。 Android中的内存使用。 内存分析工具和实践。 以下内容不考虑非引用类型的数据,或者将其等同为对应的引用类型看待——...

2066
来自专栏PHP在线

PHP底层的运行机制与原理

PHP说简单,但是要精通也不是一件简单的事。我们除了会使用之外,还得知道它底层的工作原理。 PHP是一种适用于web开发的动态语言。具体点说,就是一个用C语言实...

4816

扫码关注云+社区