[玩转系统] about_Intrinsic_Members
作者:精品下载站 日期:2024-12-14 02:22:08 浏览:15 分类:玩电脑
about_Intrinsic_Members
简短描述
提供有关可用于所有 PowerShell 对象的 PowerShell 内部成员的信息。
详细说明
创建对象时,PowerShell 会向每个对象添加一些“隐藏”属性和方法。这些属性和方法称为内在成员。这些内在成员通常是隐藏的。可以使用 Get-Member 的 Force 参数查看这些隐藏成员。
对象视图
内部成员包括一组表示对象视图的 MemberSet 属性。有关 MemberSet 属性的详细信息,请参阅 PSMemberSet。
每个 PowerShell 对象都包含以下属性。
psbase
psbase
MemberSet 包含基础对象的成员,无需扩展或改编。根据对象类型,它可以是由[psobject]
实例包装的 .NET 实例,或者如果没有包装器,则它是输入对象本身。psadapted
psadapted
MemberSet 显示基础对象以及经过调整的成员(如果存在)。适配成员由扩展类型系统 (ETS) 添加。ps扩展
psextended
MemberSet 仅显示由 Types.ps1xml 文件和 Add-Member cmdlet 添加的成员。任何对象都可以在运行时使用Add-Member
cmdlet 进行扩展。psobject
psobject
MemberSet 是任何对象的丰富反射源,其中包括有关该对象的方法、属性和其他信息。
示例
对于此示例,$hash
是包含有关用户信息的哈希表。 Get-Member
的 Force 参数向我们展示了对象的内在成员。
$hash = @{
Age = 33
Name = 'Bob'
}
$hash | Get-Member -Force -MemberType MemberSet, CodeProperty
TypeName: System.Collections.Hashtable
Name MemberType Definition
---- ---------- ----------
pstypenames CodeProperty System.Collections.ObjectModel.Collection`1[[System.String, System.Private.CoreLib, Version=7…
psadapted MemberSet psadapted {Item, IsReadOnly, IsFixedSize, IsSynchronized, Keys, Values, SyncRoot, Count, Add,…
psbase MemberSet psbase {Item, IsReadOnly, IsFixedSize, IsSynchronized, Keys, Values, SyncRoot, Count, Add, Cl…
psextended MemberSet psextended {}
psobject MemberSet psobject {Members, Properties, Methods, ImmediateBaseObject, BaseObject, TypeNames, get_Membe…
使用 psobject
与使用 Get-Member
类似,但提供了更大的灵活性。例如,您可以枚举对象的属性及其值。
$hash.psobject.Properties | Select-Object Name, MemberType, Value
Name MemberType Value
---- ---------- -----
IsReadOnly Property False
IsFixedSize Property False
IsSynchronized Property False
Keys Property {Age, Name}
Values Property {33, Bob}
SyncRoot Property {[Age, 33], [Name, Bob]}
Count Property 2
将其与通过将哈希表转换为 PSCustomObject 创建的对象进行比较。
$user = [pscustomobject]$hash
$user.psobject.Properties | Select-Object Name, MemberType, Value
Name MemberType Value
---- ---------- -----
Age NoteProperty 33
Name NoteProperty Bob
请注意,哈希表中的键已转换为 PSCustomObject 中的属性。新属性现在是 psextended
MemberSet 的一部分。
$user | Get-Member -Force -MemberType MemberSet, CodeProperty
TypeName: System.Management.Automation.PSCustomObject
Name MemberType Definition
---- ---------- ----------
pstypenames CodeProperty System.Collections.ObjectModel.Collection`1[[System.String, System.Private.CoreLib, Version=7…
psadapted MemberSet psadapted {ToString, GetType, Equals, GetHashCode}
psbase MemberSet psbase {ToString, GetType, Equals, GetHashCode}
psextended MemberSet psextended {Age, Name}
psobject MemberSet psobject {Members, Properties, Methods, ImmediateBaseObject, BaseObject, TypeNames, get_Membe…
类型信息
pstypenames
CodeProperty 按继承顺序列出对象类型层次结构。例如:
$file = Get-Item C:\temp\test.txt
$file.pstypenames
System.IO.FileInfo
System.IO.FileSystemInfo
System.MarshalByRefObject
System.Object
输出从最具体的对象类型 System.IO.FileInfo
开始,一直到最通用的类型 System.Object
。
方法
PowerShell 向所有 PowerShell 对象添加两个隐藏方法。使用 Get-Member -Force
命令或 Tab 补全时,这些方法不可见。
ForEach() 和Where()
ForEach()
和 Where()
方法可用于所有 PowerShell 对象。然而,它们在处理集合时最有用。有关如何使用这些方法的更多信息,请参阅 about_Arrays。
特性
Count 和 Length 属性适用于所有 PowerShell 对象,而不仅仅是集合。它们彼此相似,但根据数据类型的不同,其工作方式可能有所不同。例如,字符串的长度是字符串中的字符数。 Count 属性是对象实例的数量。
PS> $str = 'string'
PS> $str.Length
6
PS> $str.Count
1
有关这些属性的详细信息,请参阅 about_Properties。
数组索引标量类型
当对象不是索引集合时,使用索引运算符访问第一个元素将返回对象本身。超出第一个元素的索引值返回$null
。
PS> (2)[0]
2
PS> (2)[-1]
2
PS> (2)[1] -eq $null
True
PS> (2)[0,0] -eq $null
True
有关详细信息,请参阅 about_Operators。
类型的 New() 方法
从 PowerShell 5.0 开始,PowerShell 为所有 .NET 类型添加静态 New()
方法。以下示例产生相同的结果。
$expression = New-Object -TypeName regex -ArgumentList 'pattern'
$expression = [regex]::new('pattern')
使用 new()
方法比使用 New-Object
性能更好。
有关详细信息,请参阅 about_Classes。
猜你还喜欢
- 03-30 [玩转系统] 如何用批处理实现关机,注销,重启和锁定计算机
- 02-14 [系统故障] Win10下报错:该文件没有与之关联的应用来执行该操作
- 01-07 [系统问题] Win10--解决锁屏后会断网的问题
- 01-02 [系统技巧] Windows系统如何关闭防火墙保姆式教程,超详细
- 12-15 [玩转系统] 如何在 Windows 10 和 11 上允许多个 RDP 会话
- 12-15 [玩转系统] 查找 Exchange/Microsoft 365 中不活动(未使用)的通讯组列表
- 12-15 [玩转系统] 如何在 Windows 上安装远程服务器管理工具 (RSAT)
- 12-15 [玩转系统] 如何在 Windows 上重置组策略设置
- 12-15 [玩转系统] 如何获取计算机上的本地管理员列表?
- 12-15 [玩转系统] 在 Visual Studio Code 中连接到 MS SQL Server 数据库
- 12-15 [玩转系统] 如何降级 Windows Server 版本或许可证
- 12-15 [玩转系统] 如何允许非管理员用户在 Windows 中启动/停止服务
取消回复欢迎 你 发表评论:
- 精品推荐!
-
- 最新文章
- 热门文章
- 热评文章
[影视] 黑道中人 Alto Knights(2025)剧情 犯罪 历史 电影
[古装剧] [七侠五义][全75集][WEB-MP4/76G][国语无字][1080P][焦恩俊经典]
[实用软件] 虚拟手机号 电话 验证码 注册
[电视剧] 安眠书店/你 第五季 You Season 5 (2025) 【全10集】
[电视剧] 棋士(2025) 4K 1080P【全22集】悬疑 犯罪 王宝强 陈明昊
[软件合集] 25年6月5日 精选软件22个
[软件合集] 25年6月4日 精选软件36个
[短剧] 2025年06月04日 精选+付费短剧推荐33部
[短剧] 2025年06月03日 精选+付费短剧推荐25部
[软件合集] 25年6月3日 精选软件44个
[剧集] [央视][笑傲江湖][2001][DVD-RMVB][高清][40集全]李亚鹏、许晴、苗乙乙
[电视剧] 欢乐颂.5部全 (2016-2024)
[电视剧] [突围] [45集全] [WEB-MP4/每集1.5GB] [国语/内嵌中文字幕] [4K-2160P] [无水印]
[影视] 【稀有资源】香港老片 艺坛照妖镜之96应召名册 (1996)
[剧集] 神经风云(2023)(完结).4K
[剧集] [BT] [TVB] [黑夜彩虹(2003)] [全21集] [粤语中字] [TV-RMVB]
[实用软件] 虚拟手机号 电话 验证码 注册
[资源] B站充电视频合集,包含多位重量级up主,全是大佬真金白银买来的~【99GB】
[影视] 内地绝版高清录像带 [mpg]
[书籍] 古今奇书禁书三教九流资料大合集 猎奇必备珍藏资源PDF版 1.14G
[电视剧] [突围] [45集全] [WEB-MP4/每集1.5GB] [国语/内嵌中文字幕] [4K-2160P] [无水印]
[剧集] [央视][笑傲江湖][2001][DVD-RMVB][高清][40集全]李亚鹏、许晴、苗乙乙
[电影] 美国队长4 4K原盘REMUX 杜比视界 内封简繁英双语字幕 49G
[电影] 死神来了(1-6)大合集!
[软件合集] 25年05月13日 精选软件16个
[精品软件] 25年05月15日 精选软件18个
[绝版资源] 南与北 第1-2季 合集 North and South (1985) /美国/豆瓣: 8.8[1080P][中文字幕]
[软件] 25年05月14日 精选软件57个
[短剧] 2025年05月14日 精选+付费短剧推荐39部
[短剧] 2025年05月15日 精选+付费短剧推荐36部
- 最新评论
-
- 热门tag