Get-Item
Získá položku v zadaném umístění.
Syntaxe
Get-Item
[-Path] <string[]>
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Force]
[-Credential <pscredential>]
[-Stream <string[]>]
[<CommonParameters>]
Get-Item
-LiteralPath <string[]>
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Force]
[-Credential <pscredential>]
[-Stream <string[]>]
[<CommonParameters>]
Get-Item
[-Path] <string[]>
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Force]
[-Credential <pscredential>]
[-CodeSigningCert]
[-DocumentEncryptionCert]
[-SSLServerAuthentication]
[-DnsName <string>]
[-Eku <string[]>]
[-ExpiringInDays <int>]
[<CommonParameters>]
Get-Item
-LiteralPath <string[]>
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Force]
[-Credential <pscredential>]
[-CodeSigningCert]
[-DocumentEncryptionCert]
[-SSLServerAuthentication]
[-DnsName <string>]
[-Eku <string[]>]
[-ExpiringInDays <int>]
[<CommonParameters>]
Get-Item
[-Path] <string[]>
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Force]
[-Credential <pscredential>]
[<CommonParameters>]
Get-Item
-LiteralPath <string[]>
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Force]
[-Credential <pscredential>]
[<CommonParameters>]
Description
Rutina Get-Item
získá položku v zadaném umístění. Nezískáte obsah položky v umístění, pokud nepoužíváte zástupný znak (*
) k vyžádání veškerého obsahu položky.
Tuto rutinu používají poskytovatelé PowerShellu k procházení různých typů úložišť dat.
Příklady
Příklad 1: Získání aktuálního adresáře
Tento příklad získá aktuální adresář. Tečka (.) představuje položku v aktuálním umístění (nikoli v jejím obsahu).
Get-Item .
Directory: C:\
Mode LastWriteTime Length Name
---- ------------- ------ ----
d---- 7/26/2006 10:01 AM ps-test
Příklad 2: Získání všech položek v aktuálním adresáři
Tento příklad získá všechny položky v aktuálním adresáři. Zástupný znak (*
) představuje veškerý obsah aktuální položky.
Get-Item *
Directory: C:\ps-test
Mode LastWriteTime Length Name
---- ------------- ------ ----
d---- 7/26/2006 9:29 AM Logs
d---- 7/26/2006 9:26 AM Recs
-a--- 7/26/2006 9:28 AM 80 date.csv
-a--- 7/26/2006 10:01 AM 30 filenoext
-a--- 7/26/2006 9:30 AM 11472 process.doc
-a--- 7/14/2006 10:47 AM 30 test.txt
Příklad 3: Získání aktuálního adresáře jednotky
Tento příklad získá aktuální adresář C:
jednotky. Načtený objekt představuje pouze adresář, nikoli jeho obsah.
Get-Item C:
Příklad 4: Získání položek na zadané jednotce
Tento příklad získá položky v jednotce C:
. Zástupný znak (*
) představuje všechny položky v kontejneru, nejen kontejner.
Get-Item C:\*
V PowerShellu použijte k získání obsahu jednu hvězdičku (*
) místo tradičního *.*
. Formát se interpretuje doslova, takže *.*
by se nenačítaly adresáře ani názvy souborů bez tečky.
Příklad 5: Získání vlastnosti v zadaném adresáři
Tento příklad získá vlastnost C:\Windows
LastAccessTime adresáře. LastAccessTime je jen jednou vlastností adresářů systému souborů. Chcete-li zobrazit všechny vlastnosti adresáře, zadejte (Get-Item <directory-name>) | Get-Member
.
(Get-Item C:\Windows).LastAccessTime
Příklad 6: Zobrazení obsahu klíče registru
Tento příklad ukazuje obsah klíče registru Microsoft.PowerShellu . Tuto rutinu můžete použít s poskytovatelem registru PowerShellu k získání klíčů registru a podklíčů registru, ale k získání hodnot a dat registru musíte použít tuto rutinu Get-ItemProperty
.
Get-Item HKLM:\Software\Microsoft\Powershell\1\Shellids\Microsoft.Powershell\
Příklad 7: Získání položek v adresáři s vyloučením
Tento příklad získá položky v adresáři Windows s názvy, které obsahují tečku (.
), ale nezačínají na w*
. Tento příklad funguje pouze v případě, že cesta obsahuje zástupný znak (*
) k určení obsahu položky.
Get-Item C:\Windows\*.* -Exclude "w*"
Příklad 8: Získání informací o pevném propojení
V PowerShellu 6.2 se přidalo alternativní zobrazení pro získání informací o pevném propojení. Pokud chcete získat informace o pevném propojení, předáte výstup na Format-Table -View childrenWithHardlink
Get-Item C:\Windows\System32\ntoskrnl.exe | Format-Table -view childrenWithHardLink
Directory: C:\Windows\System32
Mode LastWriteTime Length Name
---- ------------- ------ ----
la--- 5/12/2021 7:40 AM 10848576 ntoskrnl.exe
Vlastnost Mode
identifikuje pevný odkaz podle in l
la---
Příklad 9: Výstup pro operační systémy jiné než Windows
V PowerShellu 7.1 v systémech Get-Item
Unix poskytuje rutina výstup podobný unixu:
PS> Get-Item /Users
Directory: /
UnixMode User Group LastWriteTime Size Name
-------- ---- ----- ------------- ---- ----
drwxr-xr-x root admin 12/20/2019 11:46 192 Users
Nové vlastnosti, které jsou nyní součástí výstupu, jsou:
- UnixMode je oprávnění k souborům reprezentovaná v systému Unix.
- Uživatel je vlastníkem souboru.
- Skupina je vlastníkem skupiny.
- Velikost je velikost souboru nebo adresáře reprezentované v systému Unix.
Poznámka:
Tato funkce byla přesunuta z experimentálního do hlavního proudu v PowerShellu 7.1.
Parametry
-CodeSigningCert
Jedná se o dynamický parametr zpřístupněný poskytovatelem certifikátu . Tento parametr a poskytovatel certifikátu jsou k dispozici pouze ve Windows.
Chcete-li získat certifikáty, které mají Code Signing
v hodnotě vlastnosti EnhancedKeyUsageList , použijte parametr CodeSigningCert .
Další informace najdete v tématu about_Certificate_Provider.
Typ: | SwitchParameter |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Credential
Poznámka:
Tento parametr nejsou podporovány žádnými poskytovateli nainstalovanými v PowerShellu. Pokud chcete zosobnit jiného uživatele nebo zvýšit úroveň přihlašovacích údajů při spuštění této rutiny, použijte Invoke-Command.
Typ: | PSCredential |
Position: | Named |
Default value: | Current user |
Vyžadováno: | False |
Přijmout vstup kanálu: | True |
Přijmout zástupné znaky: | False |
-DnsName
Jedná se o dynamický parametr zpřístupněný poskytovatelem certifikátu . Tento parametr a poskytovatel certifikátu jsou k dispozici pouze ve Windows.
Určuje název domény nebo vzor názvu, který se má shodovat s vlastností DNSNameList certifikátů, které rutina získá. Hodnota tohoto parametru může být Unicode
nebo ASCII
. Punycode hodnoty jsou převedeny na Unicode. Jsou povoleny zástupné znaky (*
).
Tento parametr byl znovu vyvolána v PowerShellu 7.1.
Další informace najdete v tématu about_Certificate_Provider.
Typ: | DnsNameRepresentation |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | True |
-DocumentEncryptionCert
Jedná se o dynamický parametr zpřístupněný poskytovatelem certifikátu . Tento parametr a poskytovatel certifikátu jsou k dispozici pouze ve Windows.
Chcete-li získat certifikáty, které mají Document Encryption
v hodnotě vlastnosti EnhancedKeyUsageList , použijte parametr DocumentEncryptionCert .
Další informace najdete v tématu about_Certificate_Provider.
Typ: | SwitchParameter |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Eku
Jedná se o dynamický parametr zpřístupněný poskytovatelem certifikátu . Tento parametr a poskytovatel certifikátu jsou k dispozici pouze ve Windows.
Určuje text nebo textový vzor, který se má shodovat s vlastností EnhancedKeyUsageList certifikátů, které rutina získá. Jsou povoleny zástupné znaky (*
). EnhancedKeyUsageList vlastnost obsahuje popisný název a pole OID EKU.
Tento parametr byl znovu vyvolána v PowerShellu 7.1.
Další informace najdete v tématu about_Certificate_Provider.
Typ: | String |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | True |
-Exclude
Určuje, jako pole řetězců, položku nebo položky, které tato rutina vylučuje v operaci. Hodnota tohoto parametru kvalifikuje parametr Path . Zadejte element nebo vzor cesty, například *.txt
. Jsou povoleny zástupné znaky. Parametr Exclude je účinný pouze v případě, že příkaz obsahuje obsah položky, například C:\Windows\*
, kde zástupný znak určuje obsah C:\Windows
adresáře.
Typ: | String[] |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | True |
-ExpiringInDays
Jedná se o dynamický parametr zpřístupněný poskytovatelem certifikátu . Tento parametr a poskytovatel certifikátu jsou k dispozici pouze ve Windows.
Určuje, že rutina by měla vracet pouze certifikáty, jejichž platnost vyprší nebo před zadaným počtem dní. Hodnota nula (0
) získá certifikáty, jejichž platnost vypršela.
Tento parametr byl znovu vyvolána v PowerShellu 7.1.
Další informace najdete v tématu about_Certificate_Provider.
Typ: | Int32 |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Filter
Určuje filtr, který má kvalifikovat parametr Path . Zprostředkovatel fileSystem je jediným nainstalovaným poskytovatelem PowerShellu, který podporuje filtry. Filtry jsou efektivnější než jiné parametry. Zprostředkovatel použije filtr, když rutina získá objekty místo toho, aby objekty po jejich načtení vyfiltrovaly PowerShell. Řetězec filtru se předá rozhraní .NET API k vytvoření výčtu souborů. Rozhraní API podporuje *
pouze zástupné dokumentace.?
Typ: | String |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | True |
-Force
Označuje, že tato rutina získá položky, ke kterým se jinak nedá získat přístup, například ke skrytým položkám. Implementace se liší od zprostředkovatele po zprostředkovatele. Další informace najdete v tématu about_Providers. I pomocí parametru Force nemůže rutina přepsat omezení zabezpečení.
Typ: | SwitchParameter |
Position: | Named |
Default value: | False |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Include
Určuje, jako pole řetězců, položku nebo položky, které tato rutina zahrnuje v operaci. Hodnota tohoto parametru kvalifikuje parametr Path . Zadejte element nebo vzor cesty, například *.txt
. Jsou povoleny zástupné znaky. Parametr Include je efektivní pouze v případě, že příkaz obsahuje obsah položky, například C:\Windows\*
, kde zástupný znak určuje obsah C:\Windows
adresáře.
Typ: | String[] |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | True |
-LiteralPath
Určuje cestu k jednomu nebo více umístěním. Hodnota LiteralPath se používá přesně tak, jak je zadána. Žádné znaky nejsou interpretovány jako zástupné znaky. Pokud cesta obsahuje řídicí znaky, uzavřete ji do jednoduchých uvozovek. Jednoduché uvozovky říkají PowerShellu, aby nepřekládaly žádné znaky jako řídicí sekvence.
Další informace najdete v tématu about_Quoting_Rules.
Typ: | String[] |
Aliasy: | PSPath, LP |
Position: | Named |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | True |
Přijmout zástupné znaky: | False |
-Path
Určuje cestu k položce. Tato rutina získá položku v zadaném umístění. Jsou povoleny zástupné znaky. Tento parametr je povinný, ale cesta k názvu parametru je nepovinná.
K určení aktuálního umístění použijte tečku (.
). Pomocí zástupné znaky (*
) zadejte všechny položky v aktuálním umístění.
Typ: | String[] |
Position: | 0 |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | True |
Přijmout zástupné znaky: | True |
-SSLServerAuthentication
Jedná se o dynamický parametr zpřístupněný poskytovatelem certifikátu . Tento parametr a poskytovatel certifikátu jsou k dispozici pouze ve Windows.
Chcete-li získat certifikáty, které mají Server Authentication
v hodnotě vlastnosti EnhancedKeyUsageList , použijte parametr SSLServerAuthentication .
Další informace najdete v tématu about_Certificate_Provider.
Typ: | SwitchParameter |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Stream
Jedná se o dynamický parametr, který zpřístupnil zprostředkovatel FileSystem . Tento parametr je k dispozici pouze ve Windows.
Získá zadaný alternativní datový proud ze souboru. Zadejte název datového proudu. Podporují se zástupné kóty. Pokud chcete získat všechny streamy, použijte hvězdičku (*
). Tento parametr je platný pro adresáře, ale všimněte si, že adresáře ve výchozím nastavení nemají datové proudy.
Tento parametr byl představen v PowerShellu 3.0. Od PowerShellu 7.2 Get-Item
můžete získat alternativní datové proudy z adresářů i souborů.
Další informace najdete v tématu about_FileSystem_Provider.
Typ: | String[] |
Position: | Named |
Default value: | No alternate file streams |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | True |
Vstupy
Řetězec, který obsahuje cestu k této rutině, můžete převést.
Výstupy
Rutina tento typ vypíše při přístupu k jednotce Alias:
.
Rutina vypíše tyto typy při přístupu k Cert:
jednotce.
Rutina tento typ vypíše při přístupu k jednotce Env:
.
Rutina vypíše tyto typy při přístupu k jednotkám Systému souborů.
Rutina vypíše tyto typy při přístupu k jednotkám Function:
.
Rutina tento typ vypíše při přístupu k jednotkám registru.
Rutina tento typ vypíše při přístupu k jednotkám Variable:
.
Rutina vypíše tyto typy při přístupu k jednotkám WSMan:
.
Poznámky
PowerShell obsahuje následující aliasy pro Get-Item
:
- Všechny platformy:
gi
Tato rutina nemá parametr Recurse , protože získá pouze položku, nikoli její obsah.
Chcete-li získat obsah položky rekurzivně, použijte Get-ChildItem
.
K procházení registru použijte tuto rutinu k získání klíčů registru a Get-ItemProperty
získání hodnot a dat registru. Hodnoty registru jsou považovány za vlastnosti klíče registru.
Tato rutina je navržená tak, aby fungovala s daty vystavenými jakýmkoli poskytovatelem. Pokud chcete zobrazit seznam poskytovatelů dostupných v relaci, zadejte Get-PsProvider
. Další informace najdete v tématu about_Providers.