about_Objects
主題
about_Objects
簡短描述
提供 Windows PowerShell 物件的相關基本資訊。
完整描述
您在 Windows PowerShell 中執行的每個動作,都是依循物件的脈絡而發生。從命令
移到下一個命令的資料,其實是一個或多個可識別的物件。每個物件則是資料的一組集合,
代表命名空間中的某個項目。物件是由三種資料組成:物件的型別、方法和屬性。
物件的型別資料提供物件所屬種類的詳細資訊。例如,代表檔案的物件即為 FileInfo 物件。
物件的方法提供可執行的動作,用於處理該物件所代表的項目。例如,FileInfo 物件包含可
用於複製檔案的方法。也就是說,當您呼叫此物件的 copy 方法時,就會複製此物件所代
表的檔案。
物件的屬性提供物件的狀態相關資訊。例如,FileInfo 物件包含 length 屬性,指定了此物
件所代表之檔案的大小。
若在命令中使用物件的方法和屬性,您即可採取特定動作及操控資料。當您將多個命令整
併為單一管線時,這種作法特別有用。
如果命令整併為單一管線,則命令之間傳遞的資訊即為物件。第一個命令執行後,將沿管
線向下傳送一個或多個物件給第二個命令。第二個命令收到來自第一個命令的物件時會先
處理物件,再傳遞新物件或修改後的物件給管線中的下一個命令。這種情形將持續發生,
直到管線中的命令都已執行完成。
以下範例說明命令之間傳遞物件的情形:
Get-ChildItem c: | where {$_.PsIsContainer -eq $false} |
Format-List
第一個命令 (Get-ChildItem c:) 會傳回檔案系統根目錄中的每個項目,各項目皆以物件
表示。這些物件將沿管線向下傳遞給第二個命令 (where {$_.PsIsContainer -eq $false})。
第二個命令則使用物件的 PsIsContainer 屬性,以篩選來自輸入物件的資料,因而並未傳回
任何目錄 (容器)。接著命令會將篩選過的資訊以物件形式傳遞給第三個命令 (Format-List),
後者再以清單格式顯示每個管線物件的內容。
請參閱
about_Methods
about_Properties
about_Pipelines
Get-Member