Get-Item
Hämtar objektet på den angivna platsen.
Syntax
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
Cmdleten Get-Item
hämtar objektet på den angivna platsen. Det hämtar inte innehållet i objektet på platsen om du inte använder ett jokertecken (*
) för att begära allt innehåll i objektet.
Den här cmdleten används av PowerShell-leverantörer för att navigera genom olika typer av datalager. Vissa parametrar är endast tillgängliga för en specifik provider. Mer information finns i about_Providers.
Exempel
Exempel 1: Hämta den aktuella katalogen
Det här exemplet hämtar den aktuella katalogen. Punkten ('.') representerar objektet på den aktuella platsen (inte dess innehåll).
Get-Item .
Directory: C:\
Mode LastWriteTime Length Name
---- ------------- ------ ----
d---- 7/26/2006 10:01 AM ps-test
Exempel 2: Hämta alla objekt i den aktuella katalogen
Det här exemplet hämtar alla objekt i den aktuella katalogen. Jokertecknet (*
) representerar allt innehåll i det aktuella objektet.
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
Exempel 3: Hämta den aktuella katalogen för en enhet
Det här exemplet hämtar enhetens C:
aktuella katalog. Objektet som hämtas representerar bara katalogen, inte dess innehåll.
Get-Item C:
Exempel 4: Hämta objekt på den angivna enheten
Det här exemplet hämtar objekten C:
på enheten. Jokertecknet (*
) representerar alla objekt i containern, inte bara containern.
Get-Item C:\*
I PowerShell använder du en enda asterisk (*
) för att hämta innehåll i stället för den traditionella *.*
. Formatet tolkas bokstavligen, så *.*
skulle inte hämta kataloger eller filnamn utan en punkt.
Exempel 5: Hämta en egenskap i den angivna katalogen
Det här exemplet hämtar egenskapen LastAccessTime för C:\Windows
katalogen. LastAccessTime är bara en egenskap för filsystemkataloger. Om du vill se alla egenskaper för en katalog skriver du (Get-Item <directory-name>) | Get-Member
.
(Get-Item C:\Windows).LastAccessTime
Exempel 6: Visa innehållet i en registernyckel
Det här exemplet visar innehållet i Microsoft.PowerShell-registernyckeln . Du kan använda den här cmdleten med PowerShell-registerprovidern för att hämta registernycklar och undernycklar, men du måste använda cmdleten Get-ItemProperty
för att hämta registervärden och data.
Get-Item HKLM:\Software\Microsoft\Powershell\1\Shellids\Microsoft.Powershell\
Exempel 7: Hämta objekt i en katalog som har ett undantag
Det här exemplet hämtar objekt i Windows-katalogen med namn som innehåller en punkt (.
), men som inte börjar med w*
. Det här exemplet fungerar bara när sökvägen innehåller ett jokertecken (*
) för att ange innehållet i objektet.
Get-Item C:\Windows\*.* -Exclude "w*"
Exempel 8: Hämta hårdlänksinformation
I PowerShell 6.2 har en alternativ vy lagts till för att hämta hårdlänksinformation. Om du vill hämta hårdlänksinformationen kan du skicka utdata till 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
Egenskapen Mode
identifierar hårdlänken med l
i la---
Exempel 9: Utdata för operativsystem som inte kommer från Windows
I PowerShell 7.1 på Unix-system ger cmdleten Get-Item
Unix-liknande utdata:
PS> Get-Item /Users
Directory: /
UnixMode User Group LastWriteTime Size Name
-------- ---- ----- ------------- ---- ----
drwxr-xr-x root admin 12/20/2019 11:46 192 Users
De nya egenskaperna som nu är en del av utdata är:
- UnixMode är filbehörigheterna som representeras i ett Unix-system
- Användaren är filägare
- Gruppen är gruppens ägare
- Storleken är storleken på filen eller katalogen som representeras i ett Unix-system
Anteckning
Den här funktionen har flyttats från experimentell till vanlig i PowerShell 7.1.
Parametrar
-CodeSigningCert
Det här är en dynamisk parameter som görs tillgänglig av certifikatprovidern. Den här parametern och certifikatprovidern är endast tillgängliga i Windows.
Om du vill hämta certifikat som har Code Signing
i egenskapsvärdet EnhancedKeyUsageList använder du parametern CodeSigningCert .
Mer information finns i about_Certificate_Provider.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Credential
Anteckning
Den här parametern stöds inte av leverantörer som är installerade med PowerShell. Om du vill personifiera en annan användare eller höja dina autentiseringsuppgifter när du kör den här cmdleten använder du Invoke-Command.
Type: | PSCredential |
Position: | Named |
Default value: | Current user |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-DnsName
Det här är en dynamisk parameter som görs tillgänglig av certifikatprovidern. Den här parametern och certifikatprovidern är endast tillgängliga i Windows.
Anger ett domännamn eller namnmönster som matchar egenskapen DNSNameList för certifikat som cmdleten hämtar. Värdet för den här parametern kan vara Unicode
eller ASCII
. Punycode-värden konverteras till Unicode. Jokertecken (*
) tillåts.
Den här parametern återinfördes i PowerShell 7.1
Mer information finns i about_Certificate_Provider.
Type: | DnsNameRepresentation |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-DocumentEncryptionCert
Det här är en dynamisk parameter som görs tillgänglig av certifikatprovidern. Den här parametern och certifikatprovidern är endast tillgängliga i Windows.
Om du vill hämta certifikat som har Document Encryption
i egenskapsvärdet EnhancedKeyUsageList använder du parametern DocumentEncryptionCert .
Mer information finns i about_Certificate_Provider.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Eku
Det här är en dynamisk parameter som görs tillgänglig av certifikatprovidern. Den här parametern och certifikatprovidern är endast tillgängliga i Windows.
Anger text eller ett textmönster som matchar egenskapen EnhancedKeyUsageList för certifikat som cmdleten hämtar. Jokertecken (*
) tillåts. Egenskapen EnhancedKeyUsageList innehåller det egna namnet och OID-fälten för EKU:n.
Den här parametern återinfördes i PowerShell 7.1
Mer information finns i about_Certificate_Provider.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-Exclude
Anger, som en strängmatris, ett objekt eller objekt som denna cmdlet exkluderar i åtgärden. Värdet för den här parametern kvalificerar parametern Path . Ange ett sökvägselement eller mönster, till exempel *.txt
. Jokertecken tillåts. Parametern Exkludera gäller endast när kommandot innehåller innehållet i ett objekt, till exempel C:\Windows\*
, där jokertecknet anger innehållet i C:\Windows
katalogen.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-ExpiringInDays
Det här är en dynamisk parameter som görs tillgänglig av certifikatprovidern. Den här parametern och certifikatprovidern är bara tillgängliga i Windows.
Anger att cmdleten endast ska returnera certifikat som upphör att gälla i eller före det angivna antalet dagar. Värdet noll (0
) hämtar certifikat som har upphört att gälla.
Den här parametern återinfördes i PowerShell 7.1
Mer information finns i about_Certificate_Provider.
Type: | Int32 |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Filter
Anger ett filter för att kvalificera parametern Path . FileSystem-providern är den enda installerade PowerShell-providern som stöder filter. Filter är effektivare än andra parametrar. Providern använder filter när cmdleten hämtar objekten i stället för att PowerShell filtrerar objekten när de har hämtats. Filtersträngen skickas till .NET API för att räkna upp filer. API:et stöder *
endast jokertecken och ?
jokertecken.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-Force
Anger att den här cmdleten hämtar objekt som annars inte kan nås, till exempel dolda objekt. Implementeringen varierar från leverantör till leverantör. Mer information finns i about_Providers. Även med hjälp av force-parametern kan cmdleten inte åsidosätta säkerhetsbegränsningar.
Type: | SwitchParameter |
Position: | Named |
Default value: | False |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Include
Anger, som en strängmatris, ett objekt eller objekt som den här cmdleten innehåller i åtgärden. Värdet för den här parametern kvalificerar parametern Path . Ange ett sökvägselement eller mönster, till exempel *.txt
. Jokertecken tillåts. Parametern Include gäller endast när kommandot innehåller innehållet i ett objekt, till exempel C:\Windows\*
, där jokertecknet anger innehållet i C:\Windows
katalogen.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
-LiteralPath
Anger en sökväg till en eller flera platser. Värdet för LiteralPath används exakt som det skrivs. Inga tecken tolkas som jokertecken. Om sökvägen innehåller escape-tecken omger du den inom enkla citattecken. Enkla citattecken säger till PowerShell att inte tolka några tecken som escape-sekvenser.
Mer information finns i about_Quoting_Rules.
Type: | String[] |
Aliases: | PSPath, LP |
Position: | Named |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Path
Anger sökvägen till ett objekt. Den här cmdleten hämtar objektet på den angivna platsen. Jokertecken tillåts. Den här parametern krävs, men parameternamnet Sökväg är valfritt.
Använd en punkt (.
) för att ange den aktuella platsen. Använd jokertecknet (*
) för att ange alla objekt på den aktuella platsen.
Type: | String[] |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | True |
Accept wildcard characters: | True |
-SSLServerAuthentication
Det här är en dynamisk parameter som görs tillgänglig av certifikatprovidern. Den här parametern och certifikatprovidern är bara tillgängliga i Windows.
Om du vill hämta certifikat som har Server Authentication
i egenskapsvärdet EnhancedKeyUsageList använder du parametern SSLServerAuthentication .
Mer information finns i about_Certificate_Provider.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Stream
Det här är en dynamisk parameter som görs tillgänglig av FileSystem-providern . Den här parametern är endast tillgänglig i Windows.
Hämtar den angivna alternativa dataströmmen från filen. Ange streamnamnet. Jokertecken stöds. Om du vill hämta alla strömmar använder du en asterisk (*
). Den här parametern är giltig på kataloger, men observera att kataloger inte har dataströmmar som standard.
Den här parametern introducerades i PowerShell 3.0. Från och med PowerShell 7.2 Get-Item
kan du hämta alternativa dataströmmar från kataloger och filer.
Mer information finns i about_FileSystem_Provider.
Type: | String[] |
Position: | Named |
Default value: | No alternate file streams |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | True |
Indata
Du kan skicka en sträng som innehåller en sökväg till denna cmdlet.
Utdata
Cmdleten matar ut den här typen vid åtkomst till Alias:
enheten.
Cmdleten matar ut dessa typer vid åtkomst till Cert:
enheten.
Cmdleten matar ut den här typen vid åtkomst till Env:
enheten.
Cmdleten matar ut dessa typer vid åtkomst till filsystemenheterna.
Cmdleten matar ut dessa typer vid åtkomst till Function:
enheterna.
Cmdleten matar ut den här typen vid åtkomst till registerenheterna.
Cmdleten matar ut den här typen vid åtkomst till Variable:
enheterna.
Cmdleten matar ut dessa typer vid åtkomst till WSMan:
enheterna.
Kommentarer
PowerShell innehåller följande alias för Get-Item
:
- Alla plattformar:
gi
Denna cmdlet har ingen Recurse-parameter eftersom den bara hämtar ett objekt, inte dess innehåll.
Om du vill hämta innehållet i ett objekt rekursivt använder du Get-ChildItem
.
Om du vill navigera i registret använder du den här cmdleten för att hämta registernycklar och Get-ItemProperty
för att hämta registervärden och data. Registervärdena anses vara egenskaper för registernyckeln.
Den här cmdleten är utformad för att fungera med data som exponeras av alla leverantörer. Om du vill visa en lista över de providrar som är tillgängliga i sessionen skriver du Get-PsProvider
. Mer information finns i about_Providers.