Get-Item

Hiermee haalt u het item op de opgegeven locatie op.

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

De Get-Item cmdlet haalt het item op de opgegeven locatie op. De inhoud van het item wordt niet op de locatie weergegeven, tenzij u een jokerteken (*) gebruikt om alle inhoud van het item aan te vragen.

Deze cmdlet wordt gebruikt door PowerShell-providers om door verschillende typen gegevensarchieven te navigeren. Sommige parameters zijn alleen beschikbaar voor een specifieke provider. Zie about_Providers voor meer informatie.

Voorbeelden

Voorbeeld 1: De huidige map ophalen

In dit voorbeeld wordt de huidige map opgeslagen. De punt ('.') vertegenwoordigt het item op de huidige locatie (niet de inhoud).

Get-Item .

Directory: C:\

Mode                LastWriteTime     Length Name
----                -------------     ------ ----
d----         7/26/2006  10:01 AM            ps-test

Voorbeeld 2: alle items in de huidige map ophalen

In dit voorbeeld worden alle items in de huidige map opgeslagen. Het jokerteken (*) vertegenwoordigt alle inhoud van het huidige item.

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

Voorbeeld 3: De huidige map van een station ophalen

In dit voorbeeld wordt de huidige map van het C: station opgeslagen. Het object dat wordt opgehaald, vertegenwoordigt alleen de map, niet de inhoud ervan.

Get-Item C:

Voorbeeld 4: Items ophalen in het opgegeven station

In dit voorbeeld worden de items in het C: station opgeslagen. Het jokerteken (*) vertegenwoordigt alle items in de container, niet alleen de container.

Get-Item C:\*

Gebruik in PowerShell één sterretje (*) om inhoud op te halen, in plaats van de traditionele *.*. De indeling wordt letterlijk geïnterpreteerd, dus *.* zou geen mappen of bestandsnamen zonder een punt ophalen.

Voorbeeld 5: Een eigenschap ophalen in de opgegeven map

In dit voorbeeld wordt de eigenschap LastAccessTime van de C:\Windows map geretourneerd. LastAccessTime is slechts één eigenschap van bestandssysteemmappen. Als u alle eigenschappen van een map wilt zien, typt u (Get-Item <directory-name>) | Get-Member.

(Get-Item C:\Windows).LastAccessTime

Voorbeeld 6: De inhoud van een registersleutel weergeven

In dit voorbeeld ziet u de inhoud van de registersleutel Microsoft.PowerShell . U kunt deze cmdlet gebruiken met de PowerShell-registerprovider om registersleutels en subsleutels op te halen, maar u moet de Get-ItemProperty cmdlet gebruiken om de registerwaarden en -gegevens op te halen.

Get-Item HKLM:\Software\Microsoft\Powershell\1\Shellids\Microsoft.Powershell\

Voorbeeld 7: Items ophalen in een map met een uitsluiting

In dit voorbeeld worden items in de Windows-map weergegeven met namen die een punt (.) bevatten, maar niet beginnen met w*. Dit voorbeeld werkt alleen wanneer het pad een jokerteken (*) bevat om de inhoud van het item op te geven.

Get-Item C:\Windows\*.* -Exclude "w*"

Voorbeeld 8: Gegevens over vaste koppeling ophalen

In PowerShell 6.2 is een alternatieve weergave toegevoegd om hardlinkinformatie op te halen. Als u de gegevens van de hardlink wilt ophalen, sluist u de uitvoer door naar 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

De Mode eigenschap identificeert de vaste koppeling door de l in la---

Voorbeeld 9: Uitvoer voor niet-Windows-besturingssystemen

In PowerShell 7.1 op Unix-systemen biedt de Get-Item cmdlet Unix-achtige uitvoer:

PS> Get-Item /Users

Directory: /

UnixMode    User  Group   LastWriteTime      Size  Name
--------    ----  -----   -------------      ----  ----
drwxr-xr-x  root  admin   12/20/2019 11:46   192   Users

De nieuwe eigenschappen die nu deel uitmaken van de uitvoer zijn:

  • UnixMode is de bestandsmachtigingen zoals weergegeven op een Unix-systeem
  • Gebruiker is de eigenaar van het bestand
  • Groep is de groepseigenaar
  • Grootte is de grootte van het bestand of de map zoals weergegeven op een Unix-systeem

Notitie

Deze functie is verplaatst van experimenteel naar basis in PowerShell 7.1.

Parameters

-CodeSigningCert

Dit is een dynamische parameter die beschikbaar wordt gesteld door de certificaatprovider . Deze parameter en de certificaatprovider zijn alleen beschikbaar in Windows.

Als u certificaten wilt ophalen die de eigenschapswaarde EnhancedKeyUsageList hebbenCode Signing, gebruikt u de parameter CodeSigningCert.

Zie about_Certificate_Provider voor meer informatie.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Credential

Notitie

Deze parameter wordt niet ondersteund door providers die zijn geïnstalleerd met PowerShell. Als u een andere gebruiker wilt imiteren of uw referenties wilt verhogen bij het uitvoeren van deze cmdlet, gebruikt u Invoke-Command.

Type:PSCredential
Position:Named
Default value:Current user
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-DnsName

Dit is een dynamische parameter die beschikbaar wordt gesteld door de certificaatprovider . Deze parameter en de certificaatprovider zijn alleen beschikbaar in Windows.

Hiermee geeft u een domeinnaam of naampatroon dat overeenkomt met de eigenschap DNSNameList van certificaten die de cmdlet ophaalt. De waarde van deze parameter kan of UnicodeASCII. Punycode-waarden worden geconverteerd naar Unicode. Jokertekens (*) zijn toegestaan.

Deze parameter is opnieuw geïntroduceerd in PowerShell 7.1

Zie about_Certificate_Provider voor meer informatie.

Type:DnsNameRepresentation
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-DocumentEncryptionCert

Dit is een dynamische parameter die beschikbaar wordt gesteld door de certificaatprovider . Deze parameter en de certificaatprovider zijn alleen beschikbaar in Windows.

Als u certificaten wilt ophalen die de eigenschapswaarde EnhancedKeyUsageList hebbenDocument Encryption, gebruikt u de parameter DocumentEncryptionCert.

Zie about_Certificate_Provider voor meer informatie.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Eku

Dit is een dynamische parameter die beschikbaar wordt gesteld door de certificaatprovider . Deze parameter en de certificaatprovider zijn alleen beschikbaar in Windows.

Hiermee geeft u tekst of een tekstpatroon dat overeenkomt met de eigenschap EnhancedKeyUsageList van certificaten die de cmdlet ophaalt. Jokertekens (*) zijn toegestaan. De eigenschap EnhancedKeyUsageList bevat de beschrijvende naam en de OID-velden van de EKU.

Deze parameter is opnieuw geïntroduceerd in PowerShell 7.1

Zie about_Certificate_Provider voor meer informatie.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-Exclude

Hiermee geeft u, als een tekenreeksmatrix, een item of items op die door deze cmdlet worden uitgesloten in de bewerking. De waarde van deze parameter komt in aanmerking voor de path-parameter . Voer een padelement of patroon in, zoals *.txt. Jokertekens zijn toegestaan. De parameter Uitsluiten is alleen van kracht wanneer de opdracht de inhoud van een item bevat, zoals C:\Windows\*, waarbij het jokerteken de inhoud van de C:\Windows map aangeeft.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-ExpiringInDays

Dit is een dynamische parameter die beschikbaar wordt gesteld door de certificaatprovider . Deze parameter en de certificaatprovider zijn alleen beschikbaar in Windows.

Hiermee geeft u op dat de cmdlet alleen certificaten moet retourneren die binnen of vóór het opgegeven aantal dagen verlopen. Een waarde van nul (0) haalt certificaten op die zijn verlopen.

Deze parameter is opnieuw geïntroduceerd in PowerShell 7.1

Zie about_Certificate_Provider voor meer informatie.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Filter

Hiermee geeft u een filter op om de path-parameter te kwalificeren. De FileSystem-provider is de enige geïnstalleerde PowerShell-provider die filters ondersteunt. Filters zijn efficiënter dan andere parameters. De provider past een filter toe wanneer de cmdlet de objecten ophaalt in plaats van PowerShell de objecten te filteren nadat deze zijn opgehaald. De filtertekenreeks wordt doorgegeven aan de .NET-API om bestanden op te sommen. De API biedt alleen ondersteuning * voor jokertekens en ? jokertekens.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-Force

Geeft aan dat deze cmdlet items ophaalt die anders niet kunnen worden geopend, zoals verborgen items. Implementatie varieert van provider tot provider. Zie about_Providers voor meer informatie. Zelfs met de parameter Force kan de cmdlet geen beveiligingsbeperkingen overschrijven.

Type:SwitchParameter
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Include

Hiermee geeft u, als tekenreeksmatrix, een item of items op die deze cmdlet in de bewerking bevat. De waarde van deze parameter komt in aanmerking voor de path-parameter . Voer een padelement of patroon in, zoals *.txt. Jokertekens zijn toegestaan. De parameter Opnemen is alleen van kracht wanneer de opdracht de inhoud van een item bevat, zoals C:\Windows\*, waarbij het jokerteken de inhoud van de C:\Windows map aangeeft.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-LiteralPath

Hiermee geeft u een pad naar een of meer locaties. De waarde van LiteralPath wordt exact gebruikt zoals deze is getypt. Er worden geen tekens geïnterpreteerd als jokertekens. Als het pad escapetekens bevat, plaatst u het tussen enkele aanhalingstekens. Enkele aanhalingstekens geven PowerShell aan dat er geen tekens als escapereeksen moeten worden geïnterpreteerd.

Zie about_Quoting_Rules voor meer informatie.

Type:String[]
Aliases:PSPath, LP
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Path

Hiermee geeft u het pad naar een item. Met deze cmdlet wordt het item op de opgegeven locatie opgeslagen. Jokertekens zijn toegestaan. Deze parameter is vereist, maar het pad van de parameternaam is optioneel.

Gebruik een punt (.) om de huidige locatie op te geven. Gebruik het jokerteken (*) om alle items op de huidige locatie op te geven.

Type:String[]
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:True

-SSLServerAuthentication

Dit is een dynamische parameter die beschikbaar wordt gesteld door de certificaatprovider . Deze parameter en de certificaatprovider zijn alleen beschikbaar in Windows.

Als u certificaten wilt ophalen die de eigenschapswaarde EnhancedKeyUsageList hebbenServer Authentication, gebruikt u de parameter SSLServerAuthentication.

Zie about_Certificate_Provider voor meer informatie.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Stream

Dit is een dynamische parameter die beschikbaar wordt gesteld door de bestandssysteemprovider . Deze parameter is alleen beschikbaar in Windows.

Hiermee haalt u de opgegeven alternatieve gegevensstroom op uit het bestand. Voer de naam van de stream in. Jokertekens worden ondersteund. Als u alle streams wilt ophalen, gebruikt u een sterretje (*). Deze parameter is geldig voor directory's, maar houd er rekening mee dat directory's niet standaard gegevensstromen hebben.

Deze parameter is geïntroduceerd in PowerShell 3.0. Vanaf PowerShell 7.2 Get-Item kunnen alternatieve gegevensstromen uit mappen en bestanden worden opgehaald.

Zie about_FileSystem_Provider voor meer informatie.

Type:String[]
Position:Named
Default value:No alternate file streams
Required:False
Accept pipeline input:False
Accept wildcard characters:True

Invoerwaarden

String

U kunt een tekenreeks met een pad naar deze cmdlet doorsluisen.

Uitvoerwaarden

AliasInfo

De cmdlet voert dit type uit bij het openen van het Alias: station.

X509StoreLocation

X509Store

X509Certificate2

De cmdlet voert deze typen uit bij het openen van het Cert: station.

DictionaryEntry

De cmdlet voert dit type uit bij het openen van het Env: station.

DirectoryInfo

FileInfo

De cmdlet voert deze typen uit bij het openen van de bestandssysteemstations.

FunctionInfo

FilterInfo

De cmdlet voert deze typen uit bij het openen van de Function: stations.

RegistryKey

De cmdlet voert dit type uit bij het openen van de registerstations.

PSVariable

De cmdlet voert dit type uit bij het openen van de Variable: stations.

WSManConfigContainerElement

WSManConfigLeafElement

De cmdlet voert deze typen uit bij het openen van de WSMan: stations.

Notities

PowerShell bevat de volgende aliassen voor Get-Item:

  • Alle platforms:
    • gi

Deze cmdlet heeft geen Recurse-parameter , omdat deze alleen een item krijgt, niet de inhoud ervan. Als u de inhoud van een item recursief wilt ophalen, gebruikt u Get-ChildItem.

Als u door het register wilt navigeren, gebruikt u deze cmdlet om registersleutels en de Get-ItemProperty registerwaarden en -gegevens op te halen. De registerwaarden worden beschouwd als eigenschappen van de registersleutel.

Deze cmdlet is ontworpen om te werken met de gegevens die door elke provider worden weergegeven. Als u de providers wilt weergeven die beschikbaar zijn in uw sessie, typt Get-PsProvideru . Zie about_Providers voor meer informatie.