Udostępnij za pomocą


Get-ChildItem

Pobiera elementy i elementy podrzędne w co najmniej jednej określonej lokalizacji.

Składnia

Items (domyślnie)

Get-ChildItem
    [[-Path] <string[]>]
    [[-Filter] <string>]
    [-Include <string[]>]
    [-Exclude <string[]>]
    [-Recurse]
    [-Depth <uint32>]
    [-Force]
    [-Name]
    [-UseTransaction]
    [-Attributes <FlagsExpression[FileAttributes]>]
    [-Directory]
    [-File]
    [-Hidden]
    [-ReadOnly]
    [-System]
    [<CommonParameters>]

LiteralItems

Get-ChildItem
    [[-Filter] <string>]
    -LiteralPath <string[]>
    [-Include <string[]>]
    [-Exclude <string[]>]
    [-Recurse]
    [-Depth <uint>]
    [-Force]
    [-Name]
    [<CommonParameters>]

Opis

Polecenie cmdlet Get-ChildItem pobiera elementy w jednej lub więcej określonych lokalizacjach. Jeśli element jest kontenerem, otrzymuje elementy wewnątrz kontenera, znane jako elementy podrzędne. Możesz użyć parametru Recurse, aby pobrać elementy we wszystkich kontenerach podrzędnych i użyć parametru Depth, aby ograniczyć liczbę poziomów rekursji.

Get-ChildItem nie wyświetla pustych katalogów. Gdy polecenie Get-ChildItem zawiera parametry głębokości lub rekursji , puste katalogi nie są uwzględniane w danych wyjściowych.

Polecenie cmdlet Get-ChildItem jest przeznaczone do pracy z elementami udostępnianymi przez dowolnego dostawcę. Na przykład elementy mogą być plikiem systemu plików lub katalogiem, gałąź rejestru lub magazynem certyfikatów. Aby wyświetlić listę dostawców dostępnych w sesji, użyj polecenia Get-PSProvider. Niektóre parametry są dostępne tylko dla określonego dostawcy. Aby uzyskać więcej informacji, zobacz about_Providers.

Przykłady

Przykład 1. Pobieranie elementów podrzędnych z katalogu systemu plików

Ten przykład pobiera elementy podrzędne z katalogu systemu plików. Zostaną wyświetlone nazwy plików i podkatalogów. W przypadku pustych lokalizacji polecenie nie zwraca żadnych danych wyjściowych i wraca do wiersza polecenia programu PowerShell.

Polecenie cmdlet Get-ChildItem używa parametru ścieżki w celu określenia katalogu C:\Test. Get-ChildItem wyświetla pliki i katalogi w konsoli programu PowerShell.

Get-ChildItem -Path C:\Test
   Directory: C:\Test

Mode                LastWriteTime         Length Name
----                -------------         ------ ----
d-----        2/15/2019     08:29                Logs
-a----        2/13/2019     08:55             26 anotherfile.txt
-a----        2/12/2019     15:40         118014 Command.txt
-a----         2/1/2019     08:43            183 CreateTestFile.ps1
-ar---        2/12/2019     14:31             27 ReadOnlyFile.txt

Domyślnie Get-ChildItem wyświetla tryb (Atrybuty), LastWriteTime, rozmiar pliku (długość) oraz nazwa elementu. Litery w Mode właściwości można interpretować w następujący sposób:

  • l (link)
  • d (katalog)
  • a (archiwum)
  • r (tylko do odczytu)
  • h (ukryte)
  • s (system)

Aby uzyskać więcej informacji na temat flag trybu, zobacz about_FileSystem_Provider.

Przykład 2: Pobieranie nazw elementów podrzędnych w katalogu

W tym przykładzie wymieniono tylko nazwy elementów w katalogu.

Polecenie cmdlet Get-ChildItem używa parametru ścieżki w celu określenia katalogu C:\Test. Parametr Nazwa zwraca tylko nazwy plików lub katalogów z określonej ścieżki. Zwracane nazwy są względne względem wartości parametru Path.

Get-ChildItem -Path C:\Test -Name
Logs
anotherfile.txt
Command.txt
CreateTestFile.ps1
ReadOnlyFile.txt

Przykład 3: Pobieranie elementów podrzędnych w bieżącym katalogu i podkatalogach

W tym przykładzie wyświetlane są pliki .txt znajdujące się w bieżącym katalogu i jego podkatalogach.

Get-ChildItem -Path .\*.txt -Recurse -Force
    Directory: C:\Test\Logs\Adirectory

Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-a----        2/12/2019     16:16             20 Afile4.txt
-a-h--        2/12/2019     15:52             22 hiddenfile.txt
-a----        2/13/2019     13:26             20 LogFile4.txt

    Directory: C:\Test\Logs\Backup

Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-a----        2/12/2019     16:16             20 ATextFile.txt
-a----        2/12/2019     15:50             20 LogFile3.txt

    Directory: C:\Test\Logs

Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-a----        2/12/2019     16:16             20 Afile.txt
-a-h--        2/12/2019     15:52             22 hiddenfile.txt
-a----        2/13/2019     13:26             20 LogFile1.txt

    Directory: C:\Test

Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-a----        2/13/2019     08:55             26 anotherfile.txt
-a----        2/12/2019     15:40         118014 Command.txt
-a-h--        2/12/2019     15:52             22 hiddenfile.txt
-ar---        2/12/2019     14:31             27 ReadOnlyFile.txt

Polecenie cmdlet Get-ChildItem używa parametru Ścieżka w celu określenia C:\Test\*.txt. ścieżka używa gwiazdki (*) do określenia wszystkich plików z rozszerzeniem .txt. Parametr Recurse wyszukuje katalog ścieżki i jego podkatalogów, jak pokazano w nagłówkach Directory:. Parametr Force wyświetla ukryte pliki, takie jak hiddenfile.txt, które mają tryb h.

Przykład 4: Pobieranie elementów podrzędnych przy użyciu parametru Include

W tym przykładzie Get-ChildItem używa parametru Include w celu znalezienia określonych elementów z katalogu określonego przez parametr Path.

# When using the -Include parameter, if you don't include an asterisk in the path
# the command returns no output.
Get-ChildItem -Path C:\Test\ -Include *.txt

Get-ChildItem -Path C:\Test\* -Include *.txt
    Directory: C:\Test

Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-a----        2/13/2019     08:55             26 anotherfile.txt
-a----        2/12/2019     15:40         118014 Command.txt
-ar---        2/12/2019     14:31             27 ReadOnlyFile.txt

Polecenie cmdlet Get-ChildItem używa parametru ścieżki w celu określenia katalogu C:\Test. Parametr Path zawiera gwiazdkę jako znak wieloznaczny na końcu (*), aby określić zawartość katalogu. Parametr Include używa gwiazdki (*) symbol wieloznaczny, aby określić wszystkie pliki z rozszerzeniem nazwy pliku .txt.

Gdy używany jest parametr Include, parametr Path wymaga końcowej gwiazdki (*) aby określić zawartość katalogu. Na przykład -Path C:\Test\*.

  • Jeśli parametr Recurse zostanie dodany do polecenia, końcowa gwiazdka (*) w parametrze ścieżki jest opcjonalna. Parametr Recurse pobiera elementy z katalogu Path oraz jego podkatalogów. Na przykład -Path C:\Test\ -Recurse -Include *.txt
  • Jeśli końcowa gwiazdka (*) nie jest uwzględniona w parametrze Path, polecenie nie zwraca żadnych danych wyjściowych i powraca do wiersza polecenia programu PowerShell. Na przykład -Path C:\Test\.

Przykład 5. Pobieranie elementów podrzędnych przy użyciu parametru Exclude

Dane wyjściowe przykładu przedstawiają zawartość katalogu C:\Test\Logs. Dane wyjściowe to odwołanie do innych poleceń, które używają parametrów Exclude i Recurse.

Get-ChildItem -Path C:\Test\Logs
    Directory: C:\Test\Logs

Mode                LastWriteTime         Length Name
----                -------------         ------ ----
d-----        2/15/2019     13:21                Adirectory
d-----        2/15/2019     08:28                AnEmptyDirectory
d-----        2/15/2019     13:21                Backup
-a----        2/12/2019     16:16             20 Afile.txt
-a----        2/13/2019     13:26             20 LogFile1.txt
-a----        2/12/2019     16:24             23 systemlog1.log
Get-ChildItem -Path C:\Test\Logs\* -Exclude A*
    Directory: C:\Test\Logs

Mode                LastWriteTime         Length Name
----                -------------         ------ ----
d-----        2/15/2019     13:21                Backup
-a----        2/13/2019     13:26             20 LogFile1.txt
-a----        2/12/2019     16:24             23 systemlog1.log

Polecenie cmdlet Get-ChildItem używa parametru ścieżki w celu określenia katalogu C:\Test\Logs. Parametr Exclude używa gwiazdki (*) jako symbolu wieloznacznego do określenia, że dowolne pliki lub katalogi rozpoczynające się od A lub a są wykluczone z danych wyjściowych.

Jeśli jest używany parametr Exclude, końcowa gwiazdka (*) w parametrze Ścieżka jest opcjonalna. Na przykład: -Path C:\Test\Logs lub -Path C:\Test\Logs\*.

  • Jeśli w parametrze ścieżki * nie znajduje się gwiazdka na końcu (), zostanie wyświetlona zawartość parametru ścieżki . Wyjątki to nazwy plików lub podkatalogów, które są zgodne z wartością parametru Exclude.
  • Jeśli w parametrze * znajduje się końcowa gwiazdka (), polecenie wchodzi w podkatalogi parametru Path. Wyjątki to nazwy plików lub podkatalogów, które są zgodne z wartością parametru Exclude.
  • Jeśli parametr Recurse zostanie dodany do polecenia, dane wyjściowe rekursji są takie same, niezależnie od tego, czy parametr Path zawiera na końcu gwiazdkę (*).

Przykład 6: Uzyskaj klucze rejestru z gałęzi rejestru

Ten przykład pobiera wszystkie klucze rejestru z HKEY_LOCAL_MACHINE\HARDWARE.

Get-ChildItem używa parametru ścieżka w celu określenia klucza rejestru HKLM:\HARDWARE. Ścieżka hive i najwyższy poziom kluczy rejestru są wyświetlane w konsoli programu PowerShell.

Więcej informacji znajdziesz w about_Registry_Provider.

Get-ChildItem -Path HKLM:\HARDWARE
    Hive: HKEY_LOCAL_MACHINE\HARDWARE

Name             Property
----             --------
ACPI
DESCRIPTION
DEVICEMAP
RESOURCEMAP
UEFI
Get-ChildItem -Path HKLM:\HARDWARE -Exclude D*
   Hive: HKEY_LOCAL_MACHINE\HARDWARE

Name                           Property
----                           --------
ACPI
RESOURCEMAP

Pierwsze polecenie pokazuje zawartość klucza rejestru HKLM:\HARDWARE. Parametr Exclude informuje, aby Get-ChildItem nie zwracał żadnych podkluczów rozpoczynających się od D*. Obecnie parametr Exclude działa tylko w podkluczach, a nie we właściwościach elementu.

Przykład 7. Pobieranie wszystkich certyfikatów z uprawnieniami do podpisywania kodu

Ten przykład pobiera każdy certyfikat z dysku Cert: programu PowerShell, który ma uprawnienia do podpisywania kodu.

Polecenie cmdlet Get-ChildItem używa parametru do wskazania dostawcy certyfikatu ze ścieżką na dysku Cert:. Parametr Recurse wyszukuje katalog podany przez Path i jego podkatalogi. Parametr CodeSigningCert pobiera tylko certyfikaty, które mają uprawnienia do podpisywania kodu.

Get-ChildItem -Path Cert:\* -Recurse -CodeSigningCert

Aby uzyskać więcej informacji na temat dostawcy certyfikatów i dysku Cert:, zobacz about_Certificate_Provider.

Przykład 8. Pobieranie elementów przy użyciu parametru Głębokość

W tym przykładzie przedstawiono elementy w katalogu i jego podkatalogach. Parametr Głębokość określa liczbę poziomów podkatalogów uwzględnianych w rekursji. Puste katalogi są wykluczone z danych wyjściowych.

Get-ChildItem -Path C:\Parent -Depth 2
    Directory: C:\Parent

Mode                LastWriteTime         Length Name
----                -------------         ------ ----
d-----        2/14/2019     10:24                SubDir_Level1
-a----        2/13/2019     08:55             26 file.txt

    Directory: C:\Parent\SubDir_Level1

Mode                LastWriteTime         Length Name
----                -------------         ------ ----
d-----        2/14/2019     10:24                SubDir_Level2
-a----        2/13/2019     08:55             26 file.txt

    Directory: C:\Parent\SubDir_Level1\SubDir_Level2

Mode                LastWriteTime         Length Name
----                -------------         ------ ----
d-----        2/14/2019     10:22                SubDir_Level3
-a----        2/13/2019     08:55             26 file.txt

Polecenie cmdlet Get-ChildItem używa parametru Ścieżka w celu określenia C:\Parent. Parametr głębokości określa dwa poziomy rekursji. Get-ChildItem wyświetla zawartość katalogu określonego przez parametr Path oraz dwa poziomy podkatalogów.

Przykład 9. Pobieranie obiektu docelowego łącza dla punktu skrzyżowania

Polecenie dir w powłoce poleceń systemu Windows pokazuje lokalizację docelową punktu skrzyżowania systemu plików. W programie PowerShell te informacje są dostępne we właściwości Target obiektu systemu plików zwróconej przez Get-ChildItem.

PS D:\> New-Item -ItemType Junction -Name tmp -Target $Env:TEMP
PS D:\> Get-ChildItem | Select-Object Name, *Target

Name     Target
----     ------
tmp      {C:\Users\user1\AppData\Local\Temp}

Przykład 10: Pobieranie elementu docelowego linku dla punktu ponownej analizy AppX

W tym przykładzie próbuje się uzyskać docelowe informacje dla punktu ponownego analizowania AppX. Aplikacje Microsoft Store tworzą punkty ponownej analizy AppX w katalogu AppData użytkownika.

Get-ChildItem ~\AppData\Local\Microsoft\WindowsApps\MicrosoftEdge.exe |
    Select-Object Mode, LinkTarget, LinkType, Name
Mode  LinkTarget LinkType Name
----  ---------- -------- ----
la---                     MicrosoftEdge.exe

W tej chwili system Windows nie zapewnia sposobu na uzyskanie informacji docelowych dla punktu ponownego przetwarzania AppX. Właściwości LinkTarget i LinkType obiektu systemu plików są puste.

Parametry

-Attributes

Uwaga / Notatka

Ten parametr jest dostępny tylko w dostawcy FileSystem.

Pobiera pliki i foldery z określonymi atrybutami. Ten parametr obsługuje wszystkie atrybuty i umożliwia określenie złożonych kombinacji atrybutów.

Aby na przykład pobrać pliki inne niż systemowe (nie katalogi), które są szyfrowane lub skompresowane, wpisz:

Get-ChildItem -Attributes !Directory+!System+Encrypted, !Directory+!System+Compressed

Aby znaleźć pliki i foldery z często używanymi atrybutami, użyj parametru Attributes. Albo parametry Directory, File, Hidden, ReadOnlyi System.

Parametr atrybutów obsługuje następujące wartości:

  • Archive
  • Compressed
  • Device
  • Directory
  • Encrypted
  • Hidden
  • IntegrityStream
  • Normal
  • NoScrubData
  • NotContentIndexed
  • Offline
  • ReadOnly
  • ReparsePoint
  • SparseFile
  • System
  • Temporary

Aby uzyskać opis tych atrybutów, zapoznaj się z wyliczeniem FileAttributes.

Aby połączyć atrybuty, użyj następujących operatorów:

  • ! (NIE)
  • + (AND)
  • , (LUB)

Nie używaj spacji między operatorem i jego atrybutem. Spacje są akceptowane po przecinkach.

W przypadku typowych atrybutów użyj następujących skrótów:

  • D (katalog)
  • H (ukryte)
  • R (tylko do odczytu)
  • S (system)

Właściwości parametru

Typ:

FlagsExpression<T>[FileAttributes]

Domyślna wartość:None
Dopuszczalne wartości:Archive, Compressed, Device, Directory, Encrypted, Hidden, IntegrityStream, Normal, NoScrubData, NotContentIndexed, Offline, ReadOnly, ReparsePoint, SparseFile, System, Temporary
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

(All)
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-CodeSigningCert

Uwaga / Notatka

Ten parametr jest dostępny tylko u dostawcy certyfikatu.

Aby uzyskać listę certyfikatów, które mają Code Signing w wartości właściwości EnhancedKeyUsageList, użyj parametru CodeSigningCert.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

(All)
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-Depth

Ten parametr został dodany w programie PowerShell 5.0 i umożliwia kontrolowanie głębokości rekursji. Domyślnie Get-ChildItem wyświetla zawartość katalogu nadrzędnego. Parametr Głębokość określa liczbę poziomów podkatalogu, które są uwzględnione w rekursji i wyświetla zawartość.

Na przykład -Depth 2 zawiera katalog parametru Path, pierwszy poziom podkatalogów i drugi poziom podkatalogów. Domyślnie nazwy katalogów i nazwy plików są uwzględniane w danych wyjściowych.

Uwaga / Notatka

Parametr głębokości nie ma żadnego efektu w przypadku użycia z parametrem Include. Aby obejść ten problem, zamiast tego użyj parametru filtru. Jest to naprawione w programie PowerShell 6 lub nowszym.

Uwaga / Notatka

Na komputerze z systemem Windows, z poziomu PowerShell lub cmd.exe, można uzyskać graficzny przegląd struktury katalogów za pomocą polecenia tree.com.

Właściwości parametru

Typ:UInt32
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

(All)
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-Directory

Uwaga / Notatka

Ten parametr jest dostępny tylko w dostawcy FileSystem.

Aby uzyskać listę katalogów, użyj parametru Katalog lub parametru Atrybuty z właściwością Katalog. Możesz użyć parametru Recurse z Directory.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False
Aliasy:reklama, d

Zestawy parametrów

(All)
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-DnsName

Uwaga / Notatka

Ten parametr jest dostępny tylko u dostawcy certyfikatu.

Określa nazwę domeny lub jej wzorzec do dopasowania z właściwością DNSNameList certyfikatów pobieranych przez polecenie cmdlet. Wartość tego parametru może być Unicode lub ASCII. Wartości punycode są konwertowane na Unicode. Dozwolone są symbole wieloznaczne (*).

Ten parametr został przywrócony w programie PowerShell 7.1

Właściwości parametru

Typ:DnsNameRepresentation
Domyślna wartość:None
Obsługuje symbole wieloznaczne:True
DontShow:False

Zestawy parametrów

(All)
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-DocumentEncryptionCert

Uwaga / Notatka

Ten parametr jest dostępny tylko u dostawcy certyfikatu.

Aby uzyskać listę certyfikatów, które mają Document Encryption w wartości właściwości EnhancedKeyUsageList, użyj parametru DocumentEncryptionCert.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

(All)
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-Eku

Uwaga / Notatka

Ten parametr jest dostępny tylko u dostawcy certyfikatu.

Określa tekst lub wzorzec tekstu, który ma być zgodny z właściwością EnhancedKeyUsageList certyfikatów pobieranych przez polecenie cmdlet. Dozwolone są symbole wieloznaczne (*). Właściwość EnhancedKeyUsageList zawiera przyjazną nazwę i pola OID EKU.

Ten parametr został przywrócony w programie PowerShell 7.1

Właściwości parametru

Typ:String
Domyślna wartość:None
Obsługuje symbole wieloznaczne:True
DontShow:False

Zestawy parametrów

(All)
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-Exclude

Określa tablicę z co najmniej jednym wzorcem ciągów, które mają być dopasowane podczas pobierania elementów podrzędnych przez polecenie cmdlet. Każdy pasujący element jest wykluczony z danych wyjściowych. Wprowadź element ścieżki lub wzorzec, taki jak *.txt lub A*. Akceptowane są symbole wieloznaczne.

Końcowa gwiazdka (*) w parametrze Path jest opcjonalna. Na przykład: -Path C:\Test\Logs lub -Path C:\Test\Logs\*. Jeśli dołączana jest końcowa gwiazdka (*), polecenie jest powtarzane w podkatalogach parametru Path. Bez gwiazdki (*) wyświetlana jest zawartość parametru Path. Więcej szczegółów można znaleźć w sekcji Przykład 5 i Uwagi.

Parametry Include i Exclude można używać razem. Jednak wykluczenia są stosowane po włączeniu, co może mieć wpływ na końcowe dane wyjściowe.

Uwaga / Notatka

Parametry Include and Exclude nie mają efektu w przypadku użycia z parametrem LiteralPath. Jest to naprawione w programie PowerShell 7.

Właściwości parametru

Typ:

String[]

Domyślna wartość:None
Obsługuje symbole wieloznaczne:True
DontShow:False

Zestawy parametrów

(All)
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-ExpiringInDays

Uwaga / Notatka

Ten parametr jest dostępny tylko u dostawcy certyfikatu.

Określa, że polecenie cmdlet powinno zwracać tylko certyfikaty, które wygasną w ciągu lub przed określoną liczbą dni. Wartość równa zeru (0) pobiera certyfikaty, które wygasły.

Ten parametr został przywrócony w programie PowerShell 7.1

Właściwości parametru

Typ:Int32
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

(All)
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-File

Uwaga / Notatka

Ten parametr jest dostępny tylko w dostawcy FileSystem.

Aby uzyskać listę plików, użyj parametru File. Możesz zastosować parametr Recurse w połączeniu z File.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False
Aliasy:Af

Zestawy parametrów

(All)
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-Filter

Określa filtr w celu kwalifikacji parametru ścieżki. Dostawca FileSystem jest jedynym zainstalowanym dostawcą programu PowerShell obsługującym filtry. Filtry są bardziej wydajne niż inne parametry. Dostawca zastosowuje filtr, gdy polecenie cmdlet pobiera obiekty, zamiast pozwalać, by program PowerShell filtrował obiekty po ich pobraniu. Ciąg filtru jest przekazywany do interfejsu API platformy .NET w celu wyliczenia plików. Interfejs API obsługuje tylko symbole wieloznaczne * i ?.

Właściwości parametru

Typ:String
Domyślna wartość:None
Obsługuje symbole wieloznaczne:True
DontShow:False

Zestawy parametrów

(All)
Position:1
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

Uwaga / Notatka

Ten parametr jest dostępny tylko w dostawcy FileSystem.

Domyślnie polecenie cmdlet Get-ChildItem wyświetla linki symboliczne do katalogów znalezionych podczas rekursji, ale nie wchodzi do nich. Użyj parametru FollowSymlink, aby wyszukać katalogi, które dotyczą tych linków symbolicznych. FollowSymlink jest parametrem dynamicznym i jest obsługiwany tylko w dostawcy systemu plików.

Ten parametr został wprowadzony w programie PowerShell 6.0.

Typ:SwitchParameter
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False
(All)
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-Force

Umożliwia polecenie cmdlet uzyskanie dostępu do elementów, do których użytkownik w przeciwnym razie by nie miał dostępu, takich jak pliki ukryte lub systemowe. Parametr Force nie zastępuje ograniczeń zabezpieczeń. Implementacja różni się w zależności od dostawcy. Aby uzyskać więcej informacji, zobacz about_Providers.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:False
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

(All)
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-Hidden

Uwaga / Notatka

Ten parametr jest dostępny tylko w dostawcy FileSystem.

Aby uzyskać tylko ukryte elementy, użyj parametru Hidden lub parametru Attributes z właściwością Hidden. Domyślnie Get-ChildItem nie wyświetla ukrytych elementów. Użyj parametru Force, aby uzyskać ukryte elementy.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False
Aliasy:ach, h

Zestawy parametrów

(All)
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-Include

Określa tablicę z co najmniej jednym wzorcem ciągów, które mają być dopasowane podczas pobierania elementów podrzędnych przez polecenie cmdlet. Wszystkie pasujące elementy są uwzględniane w danych wyjściowych. Wprowadź element ścieżki lub wzorzec, taki jak "*.txt". Symbole wieloznaczne są dozwolone. Parametr Include jest skuteczny tylko wtedy, gdy polecenie zawiera zawartość elementu, na przykład C:\Windows\*, gdzie symbol wieloznaczny określa zawartość katalogu C:\Windows.

Parametry Include i Exclude można używać razem. Jednak wykluczenia są stosowane po włączeniu, co może mieć wpływ na końcowe dane wyjściowe.

Uwaga / Notatka

Parametry Include and Exclude nie mają efektu w przypadku użycia z parametrem LiteralPath. Jest to naprawione w programie PowerShell 7.

Uwaga / Notatka

Parametr głębokości nie ma żadnego efektu w przypadku użycia z parametrem Include. Aby obejść ten problem, zamiast tego użyj parametru filtru. Jest to naprawione w programie PowerShell 6.

Właściwości parametru

Typ:

String[]

Domyślna wartość:None
Obsługuje symbole wieloznaczne:True
DontShow:False

Zestawy parametrów

(All)
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-LiteralPath

Określa ścieżkę do co najmniej jednej lokalizacji. Wartość LiteralPath jest używana dokładnie tak, jak jest typowana. Żadne znaki nie są interpretowane jako symbole wieloznaczne. Jeśli ścieżka zawiera znaki ucieczki, należy ująć ją w pojedynczy cudzysłów. Pojedyncze cudzysłowy informują program PowerShell, aby nie interpretował żadnych znaków jako sekwencji ucieczki.

Aby uzyskać więcej informacji, zobacz about_Quoting_Rules.

Uwaga / Notatka

Parametry Include and Exclude nie mają efektu w przypadku użycia z parametrem LiteralPath. Jest to naprawione w programie PowerShell 7.

Właściwości parametru

Typ:

String[]

Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False
Aliasy:PSPath

Zestawy parametrów

LiteralItems
Position:Named
Obowiązkowe:True
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:True
Wartość z pozostałych argumentów:False

-Name

Pobiera tylko nazwy elementów w lokalizacji. Dane wyjściowe to obiekt ciągu, który można wysłać w dół potoku do innych poleceń. Zwracane nazwy są względne względem wartości parametru Path.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

(All)
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-Path

Określa ścieżkę do co najmniej jednej lokalizacji. Jeśli nie zostanie określony, domyślną lokalizacją jest bieżący katalog (.). Symbole wieloznaczne są akceptowane. Należy zachować ostrożność podczas używania parametru path z parametrem Recurse. Aby uzyskać więcej informacji, zobacz sekcję UWAGI tego artykułu.

Właściwości parametru

Typ:

String[]

Domyślna wartość:Current directory
Obsługuje symbole wieloznaczne:True
DontShow:False

Zestawy parametrów

Items
Position:0
Obowiązkowe:False
Wartość z potoku:True
Wartość z potoku według nazwy właściwości:True
Wartość z pozostałych argumentów:False

-ReadOnly

Uwaga / Notatka

Ten parametr jest dostępny tylko w dostawcy FileSystem.

Aby uzyskać elementy tylko do odczytu, użyj parametru ReadOnly lub parametru Attributes właściwości ReadOnly.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False
Aliasy:Ar

Zestawy parametrów

(All)
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-Recurse

Pobiera elementy w określonych lokalizacjach i we wszystkich elementach podrzędnych lokalizacji.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:False
Obsługuje symbole wieloznaczne:False
DontShow:False
Aliasy:s

Zestawy parametrów

(All)
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-SSLServerAuthentication

Uwaga / Notatka

Ten parametr jest dostępny tylko u dostawcy certyfikatu.

Aby uzyskać listę certyfikatów, które mają Server Authentication w wartości właściwości EnhancedKeyUsageList, użyj parametru SSLServerAuthentication.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

(All)
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-System

Uwaga / Notatka

Ten parametr jest dostępny tylko w dostawcy FileSystem.

Pobiera tylko pliki systemowe i katalogi. Aby uzyskać tylko pliki systemowe i foldery, użyj parametru System lub parametru atrybutów właściwości System.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False
Aliasy:jako

Zestawy parametrów

(All)
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-UseTransaction

Zawiera polecenie w aktywnej transakcji. Ten parametr jest prawidłowy tylko wtedy, gdy transakcja jest w toku. Aby uzyskać więcej informacji, zobacz about_Transactions.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:False
Obsługuje symbole wieloznaczne:False
DontShow:False
Aliasy:usetx

Zestawy parametrów

(All)
Position:Named
Obowiązkowe:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

CommonParameters

To polecenie cmdlet obsługuje typowe parametry: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction i -WarningVariable. Aby uzyskać więcej informacji, zobacz about_CommonParameters.

Dane wejściowe

String

Możesz przekierować ciąg zawierający ścieżkę do tego cmdletu.

Dane wyjściowe

AliasInfo

Polecenie cmdlet zwraca ten typ podczas uzyskiwania dostępu do dysku Alias:.

X509StoreLocation

X509Store

X509Certificate2

Polecenie cmdlet zwraca te typy podczas uzyskiwania dostępu do dysku Cert:.

DictionaryEntry

Polecenie cmdlet zwraca ten typ podczas uzyskiwania dostępu do dysku Env:.

DirectoryInfo

FileInfo

Polecenie cmdlet zwraca te typy podczas uzyskiwania dostępu do dysków systemu plików.

FunctionInfo

FilterInfo

Cmdlet zwraca te typy podczas uzyskiwania dostępu do dysków Function:.

RegistryKey

Polecenie cmdlet zwraca ten typ podczas uzyskiwania dostępu do dysków rejestru.

PSVariable

Polecenie cmdlet zwraca ten typ podczas uzyskiwania dostępu do dysków Variable:.

WSManConfigContainerElement

WSManConfigLeafElement

Cmdlet zwraca te typy podczas uzyskiwania dostępu do dysków WSMan:.

String

Jeśli używasz parametru Name, to polecenie cmdlet zwraca nazwy obiektów jako ciągi.

Uwagi

Program Windows PowerShell zawiera następujące aliasy dla Get-ChildItem:

  • ls
  • dir
  • gci

zachowanie rekursji z parametrem Path:

Jeśli używasz Get-ChildItem -Recurse z parametrem ścieżka, polecenie cmdlet wyszukuje ostatni składnik ścieżki, niezależnie od tego, czy jest to wzorzec wieloznaczny, czy nazwa literału.

  • Jeśli ostatni składnik ścieżki pasuje do istniejącego bezpośredniego podkatalogu katalogu docelowego, polecenie cmdlet wykonuje rekursywne wyliczenie w pasującym katalogu.
  • Jeśli ostatni składnik ścieżki nie pasuje do istniejącego bezpośredniego podkatalogu katalogu docelowego, polecenie cmdlet cyklicznie przeszukuje hierarchię katalogu docelowego dla elementów pasujących do ostatniego składnika ścieżki

W przypadku używania Get-ChildItem -Recurse z parametrami path i Name zachowanie się zmienia. Polecenie wyszukuje ostatni składnik ścieżki wśród natychmiastowych elementów podrzędnych katalogu docelowego.

  • Jeśli istnieje dopasowanie między bezpośrednimi elementami podrzędnymi, polecenie cmdlet wykonuje rekursywne wyliczenie na pasujących elementach. Dopasowywanie symboli wieloznacznych odbywa się tylko raz na najwyższym poziomie katalogu docelowego. Wyniki są przetwarzane tak, jakby zostały one indywidualnie przekazane do parametru LiteralPath.
  • Jeśli ostatni składnik ścieżki nie jest zgodny z żadnymi elementami na najwyższym poziomie, wystąpi błąd.

Należy unikać używania parametru path z parametrem Recurse. Aby uzyskać najlepsze wyniki:

  • Użyj LiteralPath, aby określić katalog docelowy, aby uniknąć wyzwalania cyklicznego wyszukiwania dla ostatniego składnika ścieżki.
  • Użyj filtru lub Uwzględnij parametry, aby określić wzorce wieloznaczne lub literału, które powinny być wyszukiwane na każdym poziomie hierarchii katalogu docelowego.