about_Objects

简短说明

提供了有关 PowerShell 中的对象的基本信息。

长说明

你在 PowerShell 中执行的每个操作都发生在对象上下文中。 当数据从一个命令移动到下一个命令时,它作为一个或多个可识别对象移动。 因此,对象是表示项的数据集合。 对象由三种类型的数据组成:对象类型、其方法和属性。

类型、方法和属性

对象类型表明它是什么类型的对象。 例如,表示文件的对象是 FileInfo 对象。

对象方法是可以对对象执行的操作。 例如,FileInfo 对象具有 CopyTo 方法,可用于复制文件。

对象属性存储有关对象的信息。 例如,FileInfo 对象有一个 LastWriteTime 属性,用于存储最近访问该文件的日期和时间。

使用对象时,可以在命令中使用其方法和属性来执行操作并管理数据。

可以使用 Get-Memberpsobject内部成员发现对象属性和方法。

管道中的对象

当各个命令在管道中组合时,它们将信息作为对象相互传递。 第一个命令运行时,它会将一个或多个对象通过管道发送到第二个命令。 第二个命令从第一个命令接收对象,处理对象,然后将新的或修订的对象传递到管道中的下一个命令。 此过程持续进行,直至管道中的所有命令都运行。

以下示例演示了如何将对象从一个命令传递到下一个命令:

Get-ChildItem C: | where { $_.PsIsContainer -eq $false } | Format-List

第一个命令 Get-ChildItem C: 返回文件系统根目录中每个项的文件或目录对象。 文件和目录对象沿着管道传递到第二个命令。

第二个命令 where { $_.PsIsContainer -eq $false } 使用所有文件系统对象的 PsIsContainer 属性来仅选择其 PsIsContainer 属性值为 False ($false) 的文件。 文件夹是容器,因此其 PsIsContainer 属性值为 True ($true),不会被选择。

第二个命令仅将文件对象传递给第三个命令 Format-List,后者在列表中显示文件对象。

另请参阅