Get-Item

Öğeyi belirtilen konumda alır.

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

Get-Item Cmdlet, öğeyi belirtilen konumda alır. Öğenin tüm içeriğini istemek için joker karakter (*) kullanmadığınız sürece öğenin içeriğini konumda almaz.

Bu cmdlet, PowerShell sağlayıcıları tarafından farklı veri deposu türleri arasında gezinmek için kullanılır. Bazı parametreler yalnızca belirli bir sağlayıcı için kullanılabilir. Daha fazla bilgi için bkz . about_Providers.

Örnekler

Örnek 1: Geçerli dizini alma

Bu örnek geçerli dizini alır. Nokta ('.'), öğeyi geçerli konumda (içeriğinde değil) temsil eder.

Get-Item .

Directory: C:\

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

Örnek 2: Geçerli dizindeki tüm öğeleri alma

Bu örnek geçerli dizindeki tüm öğeleri alır. Joker karakter (*), geçerli öğenin tüm içeriğini temsil eder.

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

Örnek 3: Bir sürücünün geçerli dizinini alma

Bu örnek, sürücünün geçerli dizinini C: alır. Alınan nesne, içeriğini değil yalnızca dizini temsil eder.

Get-Item C:

Örnek 4: Belirtilen sürücüdeki öğeleri alma

Bu örnek, sürücüdeki C: öğeleri alır. Joker karakter (*), yalnızca kapsayıcıyı değil kapsayıcıdaki tüm öğeleri temsil eder.

Get-Item C:\*

PowerShell'de, içeriği almak için geleneksel *.*yerine tek bir yıldız işareti (*) kullanın. Biçim tam anlamıyla yorumlanır, bu nedenle *.* nokta olmadan dizinleri veya dosya adlarını alamazsınız.

Örnek 5: Belirtilen dizinde bir özellik alma

Bu örnek dizinin LastAccessTime özelliğini C:\Windows alır. LastAccessTime , dosya sistemi dizinlerinin yalnızca bir özelliğidir. Dizinin tüm özelliklerini görmek için yazın (Get-Item <directory-name>) | Get-Member.

(Get-Item C:\Windows).LastAccessTime

Örnek 6: Kayıt defteri anahtarının içeriğini gösterme

Bu örnekte Microsoft.PowerShell kayıt defteri anahtarının içeriği gösterilmektedir. Bu cmdlet'i PowerShell Kayıt Defteri sağlayıcısıyla birlikte kullanarak kayıt defteri anahtarlarını ve alt anahtarları alabilirsiniz, ancak kayıt defteri değerlerini ve verilerini almak için cmdlet'ini kullanmanız Get-ItemProperty gerekir.

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

Örnek 7: Dizinde dışlama içeren öğeleri alma

Bu örnek, Windows dizininde nokta (). içeren ancak ile w*başlamamış adlara sahip öğeleri alır. Bu örnek yalnızca yol, öğenin içeriğini belirtmek için bir joker karakter (*) içerdiğinde çalışır.

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

Örnek 8: Sabit bağlantı bilgilerini alma

PowerShell 6.2'de, sabit bağlantı bilgilerini almak için alternatif bir görünüm eklendi. Sabit bağlantı bilgilerini almak için çıkışı 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

Mode özelliği, sabit bağlantıyı lla---

Örnek 9: Windows Dışı İşletim Sistemleri için Çıkış

Unix sistemlerinde PowerShell 7.1'de Get-Item , cmdlet Unix benzeri bir çıkış sağlar:

PS> Get-Item /Users

Directory: /

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

Artık çıkışın parçası olan yeni özellikler şunlardır:

  • UnixMode , unix sisteminde temsil edilen dosya izinleridir
  • Kullanıcı dosya sahibidir
  • Grup , grubun sahibidir
  • Boyut , unix sisteminde gösterildiği gibi dosya veya dizinin boyutudur

Not

Bu özellik PowerShell 7.1'de deneyselden temele taşındı.

Parametreler

-CodeSigningCert

Bu, Sertifika sağlayıcısı tarafından sağlanan dinamik bir parametredir. Bu parametre ve Sertifika sağlayıcısı yalnızca Windows'da kullanılabilir.

EnhancedKeyUsageList özellik değerindeki Code Signing sertifikaları almak için CodeSigningCert parametresini kullanın.

Daha fazla bilgi için bkz . about_Certificate_Provider.

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

-Credential

Not

Bu parametre, PowerShell ile yüklenen sağlayıcılar tarafından desteklenmez. Başka bir kullanıcının kimliğine bürünmek veya bu cmdlet'i çalıştırırken kimlik bilgilerinizi yükseltmek için Invoke-Command kullanın.

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

-DnsName

Bu, Sertifika sağlayıcısı tarafından sağlanan dinamik bir parametredir. Bu parametre ve Sertifika sağlayıcısı yalnızca Windows'da kullanılabilir.

Cmdlet'in aldığı sertifikaların DNSNameList özelliğiyle eşleşecek bir etki alanı adı veya ad deseni belirtir. Bu parametrenin değeri veya ASCIIolabilirUnicode. Punycode değerleri Unicode'a dönüştürülür. Joker karakterlere (*) izin verilir.

Bu parametre PowerShell 7.1'de yeniden tanıtıldı

Daha fazla bilgi için bkz . about_Certificate_Provider.

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

-DocumentEncryptionCert

Bu, Sertifika sağlayıcısı tarafından sağlanan dinamik bir parametredir. Bu parametre ve Sertifika sağlayıcısı yalnızca Windows'da kullanılabilir.

EnhancedKeyUsageList özellik değerine sahip Document Encryption sertifikaları almak için DocumentEncryptionCert parametresini kullanın.

Daha fazla bilgi için bkz . about_Certificate_Provider.

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

-Eku

Bu, Sertifika sağlayıcısı tarafından sağlanan dinamik bir parametredir. Bu parametre ve Sertifika sağlayıcısı yalnızca Windows'da kullanılabilir.

Cmdlet'in aldığı sertifikaların EnhancedKeyUsageList özelliğiyle eşleşecek metni veya metin desenini belirtir. Joker karakterlere (*) izin verilir. EnhancedKeyUsageList özelliği, EKU'nun kolay adını ve OID alanlarını içerir.

Bu parametre PowerShell 7.1'de yeniden tanıtıldı

Daha fazla bilgi için bkz . about_Certificate_Provider.

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

-Exclude

Dize dizisi olarak, bu cmdlet'in işlemde hariç tutulduğu öğeyi veya öğeleri belirtir. Bu parametrenin değeri Path parametresini niteler. gibi *.txtbir yol öğesi veya deseni girin. Joker karakterlere izin verilir. Exclude parametresi yalnızca komutu gibi C:\Windows\*bir öğenin içeriğini içerdiğinde geçerlidir; burada joker karakter dizinin içeriğini C:\Windows belirtir.

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

-ExpiringInDays

Bu, Sertifika sağlayıcısı tarafından sağlanan dinamik bir parametredir. Bu parametre ve Sertifika sağlayıcısı yalnızca Windows'da kullanılabilir.

Cmdlet'in yalnızca belirtilen sayıda gün içinde veya daha önce süresi dolan sertifikaları döndürmesi gerektiğini belirtir. Sıfır (0) değeri süresi dolmuş sertifikaları alır.

Bu parametre PowerShell 7.1'de yeniden tanıtıldı

Daha fazla bilgi için bkz . about_Certificate_Provider.

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

-Filter

Path parametresini nitelemek için bir filtre belirtir. FileSystem sağlayıcısı, filtreleri destekleyen tek yüklü PowerShell sağlayıcısıdır. Filtreler diğer parametrelerden daha verimlidir. Sağlayıcı, cmdlet nesneleri aldıktan sonra PowerShell'in nesneleri filtrelemesini yapmak yerine nesneleri aldığında filtre uygular. Filtre dizesi dosyaları listelemek için .NET API'sine geçirilir. API yalnızca ve ? joker karakterlerini destekler*.

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

-Force

Bu cmdlet'in gizli öğeler gibi başka türlü erişilmeyecek öğeleri aldığını gösterir. Uygulama sağlayıcıdan sağlayıcıya değişir. Daha fazla bilgi için bkz . about_Providers. Zorla parametresi kullanıldığında bile cmdlet güvenlik kısıtlamalarını geçersiz kılamaz.

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

-Include

Dize dizisi olarak, bu cmdlet'in işleme dahil olduğu öğeyi veya öğeleri belirtir. Bu parametrenin değeri Path parametresini niteler. gibi *.txtbir yol öğesi veya deseni girin. Joker karakterlere izin verilir. Include parametresi yalnızca komutu gibi C:\Windows\*bir öğenin içeriğini içerdiğinde geçerlidir; burada joker karakter dizinin içeriğini C:\Windows belirtir.

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

-LiteralPath

Bir veya daha fazla konumun yolunu belirtir. LiteralPath değeri tam olarak yazıldığı gibi kullanılır. Hiçbir karakter joker karakter olarak yorumlanmamıştır. Yol kaçış karakterleri içeriyorsa, tek tırnak içine alın. Tek tırnak işaretleri PowerShell'e hiçbir karakteri kaçış dizisi olarak yorumlamaması gerektiğini söyler.

Daha fazla bilgi için bkz . about_Quoting_Rules.

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

-Path

Bir öğenin yolunu belirtir. Bu cmdlet öğeyi belirtilen konumda alır. Joker karakterlere izin verilir. Bu parametre gereklidir, ancak Path parametre adı isteğe bağlıdır.

Geçerli konumu belirtmek için nokta (.) kullanın. Geçerli konumdaki tüm öğeleri belirtmek için joker karakteri (*) kullanın.

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

-SSLServerAuthentication

Bu, Sertifika sağlayıcısı tarafından sağlanan dinamik bir parametredir. Bu parametre ve Sertifika sağlayıcısı yalnızca Windows'da kullanılabilir.

EnhancedKeyUsageList özellik değerindeki Server Authentication sertifikaları almak için SSLServerAuthentication parametresini kullanın.

Daha fazla bilgi için bkz . about_Certificate_Provider.

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

-Stream

Bu, FileSystem sağlayıcısı tarafından sağlanan dinamik bir parametredir. Bu parametre yalnızca Windows'ta kullanılabilir.

Belirtilen alternatif veri akışını dosyadan alır. Akış adını girin. Joker karakterler desteklenir. Tüm akışları almak için yıldız işareti ()* kullanın. Bu parametre dizinlerde geçerlidir, ancak dizinlerde varsayılan olarak veri akışları olmadığını unutmayın.

Bu parametre PowerShell 3.0'da kullanıma sunulmuştur. PowerShell 7.2'den itibaren dizinlerden Get-Item ve dosyalardan alternatif veri akışları alabilir.

Daha fazla bilgi için bkz . about_FileSystem_Provider.

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

Girişler

String

Bu cmdlet'in yolunu içeren bir dizeyi kanala aktarabilirsiniz.

Çıkışlar

AliasInfo

Cmdlet, sürücüye erişirken bu tür çıkışlar Alias: oluşturur.

X509StoreLocation

X509Store

X509Certificate2

Cmdlet, sürücüye erişirken bu türlerin çıkışını Cert: oluşturur.

DictionaryEntry

Cmdlet, sürücüye erişirken bu tür çıkışlar Env: oluşturur.

DirectoryInfo

FileInfo

Cmdlet, Dosya Sistemi sürücülerine erişirken bu türlerin çıkışını oluşturur.

FunctionInfo

FilterInfo

Cmdlet, sürücülere erişirken bu türlerin çıkışını Function: oluşturur.

RegistryKey

Cmdlet, Kayıt Defteri sürücülerine erişirken bu tür bir çıkış oluşturur.

PSVariable

Cmdlet, sürücülere erişirken Variable: bu tür çıkış yapar.

WSManConfigContainerElement

WSManConfigLeafElement

Cmdlet, sürücülere erişirken bu türlerin çıkışını WSMan: oluşturur.

Notlar

PowerShell için aşağıdaki diğer adları Get-Itemiçerir:

  • Tüm platformlar:
    • gi

Bu cmdlet'in özyineleme parametresi yok, çünkü içeriği değil yalnızca bir öğe alıyor. Bir öğenin içeriğini özyinelemeli olarak almak için kullanın Get-ChildItem.

Kayıt defterinde gezinmek için bu cmdlet'i kullanarak kayıt defteri anahtarlarını alın ve Get-ItemProperty kayıt defteri değerlerini ve verilerini alın. Kayıt defteri değerleri, kayıt defteri anahtarının özellikleri olarak kabul edilir.

Bu cmdlet, herhangi bir sağlayıcı tarafından kullanıma sunulan verilerle çalışacak şekilde tasarlanmıştır. Oturumunuzda kullanılabilen sağlayıcıları listelemek için yazın Get-PsProvider. Daha fazla bilgi için bkz . about_Providers.