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>]

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.

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 *.* haalt geen mappen of bestandsnamen op zonder een punt.

Voorbeeld 5: Een eigenschap ophalen in de opgegeven map

In dit voorbeeld wordt de eigenschap LastAccessTime van de C:\Windows map opgeslagen. 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 bij 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 opgeslagen 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 hardlinkgegevens op te halen. Als u de hardlink-informatie 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

-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

-Exclude

Hiermee geeft u, als 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

-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 filter toe wanneer de cmdlet de objecten ophaalt in plaats van PowerShell de objecten te filteren nadat ze zijn opgehaald. De filtertekenreeks wordt doorgegeven aan de .NET-API om bestanden op te sommen. De API ondersteunt * alleen jokertekens en ? jokertekens.

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

-Force

Hiermee wordt aangegeven dat met deze cmdlet items worden opgehaald die anders niet kunnen worden geopend, zoals verborgen items. Implementatie varieert van provider tot provider. Zie about_Providers voor meer informatie. Zelfs als u de parameter Force gebruikt, 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 bevat 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 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 terwijl deze wordt 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 u geen tekens als escape-reeksen interpreteert.

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 op. Met deze cmdlet wordt het item op de opgegeven locatie opgeslagen. Jokertekens zijn toegestaan. Deze parameter is vereist, maar het pad naar 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

-Stream

Notitie

Deze parameter is alleen beschikbaar in Windows.

Hiermee haalt u de opgegeven alternatieve NTFS-bestandsstroom 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 niet geldig voor mappen.

Stream is een dynamische parameter die de bestandssysteemprovider toevoegt aan de Get-Item cmdlet. Deze parameter werkt alleen in bestandssysteemstations.

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

Object

Met deze cmdlet worden de objecten geretourneerd die worden opgehaald. Het type wordt bepaald door het type objecten in het pad.

Notities

Deze cmdlet heeft geen Recurse-parameter , omdat het 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 u Get-PsProvider. Zie about_Providers voor meer informatie.