about_Objects
Krótki opis
Zawiera podstawowe informacje o obiektach w programie PowerShell.
Długi opis
Każda akcja wykonywana w programie PowerShell odbywa się w kontekście obiektów. Gdy dane są przemieszczane z jednego polecenia do następnego, są one przemieszczane jako co najmniej jeden możliwy do zidentyfikowania obiekt. Następnie obiekt jest kolekcją danych reprezentujących element. Obiekt składa się z trzech typów danych: typu obiektów, jego metod i jego właściwości.
Typy, metody i właściwości
Typ obiektu informuje o tym, jaki jest obiekt. Na przykład obiekt reprezentujący plik jest obiektem FileInfo .
Metody obiektu to akcje, które można wykonać na obiekcie. Na przykład obiekty FileInfo mają metodę CopyTo, której można użyć do skopiowania pliku.
Właściwości obiektu przechowują informacje o obiekcie. Na przykład obiekty FileInfo mają właściwość LastWriteTime , która przechowuje datę i godzinę ostatniego dostępu do pliku.
Podczas pracy z obiektami można użyć ich metod i właściwości w poleceniach, aby podjąć działania i zarządzać danymi.
Właściwości i metody obiektów można odnaleźć przy użyciu metody Get-Member lub wewnętrznego psobject
elementu członkowskiego.
Obiekty w potokach
Gdy polecenia są łączone w potoku, przekazują do siebie informacje jako obiekty. Po uruchomieniu pierwszego polecenia wysyła jeden lub więcej obiektów w dół potoku do drugiego polecenia. Drugie polecenie odbiera obiekty z pierwszego polecenia, przetwarza obiekty, a następnie przekazuje nowe lub poprawione obiekty do następnego polecenia w potoku. Będzie to kontynuowane do momentu uruchomienia wszystkich poleceń w przebiegu potoku.
W poniższym przykładzie pokazano, jak obiekty są przekazywane z jednego polecenia do następnego:
Get-ChildItem C: | where { $_.PsIsContainer -eq $false } | Format-List
Pierwsze polecenie Get-ChildItem C:
zwraca plik lub obiekt katalogu dla każdego elementu w katalogu głównym systemu plików. Obiekty plików i katalogów są przekazywane potokowi do drugiego polecenia.
Drugie polecenie where { $_.PsIsContainer -eq $false }
używa właściwości PsIsContainer wszystkich obiektów systemu plików do wybierania tylko plików, które mają wartość False ($false
) we właściwości PsIsContainer . Foldery, które są kontenerami i w związku z tym mają wartość True ($true
) we właściwości PsIsContainer , nie są zaznaczone.
Drugie polecenie przekazuje tylko obiekty plików do trzeciego polecenia Format-List
, które wyświetla obiekty plików na liście.