about_Objects
简短说明
提供有关 PowerShell 中对象的基本信息。
长说明
在 PowerShell 中执行的每个操作都发生在 对象的上下文中。 当数据从一个命令移动到下一个命令时,它作为一个或多个可识别对象移动。 然后,对象是表示项的数据集合。 对象由三种类型的数据组成:对象类型、方法及其属性。
类型、方法和属性
对象类型指示它是哪种类型的对象。 例如,表示文件的对象是 FileInfo 对象。
对象方法是可以对 对象执行的操作。 例如, FileInfo 对象具有可用于复制文件的 CopyTo 方法。
对象属性存储有关对象的信息。 例如, FileInfo 对象具有 LastWriteTime 属性,用于存储最近访问文件的日期和时间。
使用对象时,可以在命令中使用其方法和属性执行操作和管理数据。
可以使用 Get-Member 或 psobject
内部成员发现对象属性和方法。
管道中的对象
当命令在管道中组合时,它们作为对象相互传递信息。 当第一个命令运行时,它会将一个或多个对象发送到第二个命令。 第二个命令从第一个命令接收对象,处理对象,然后将新的或修订的对象传递到管道中的下一个命令。 这一直持续到管道中的所有命令运行。
以下示例演示了如何将对象从一个命令传递到下一个命令:
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
在列表中显示文件对象。