Поделиться через


Get-Item

Возвращает элемент в указанном расположении.

Синтаксис

Get-Item
   [-Path] <String[]>
   [-Filter <String>]
   [-Include <String[]>]
   [-Exclude <String[]>]
   [-Force]
   [-Credential <PSCredential>]
   [-UseTransaction]
   [-Stream <String[]>]
   [<CommonParameters>]
Get-Item
   -LiteralPath <String[]>
   [-Filter <String>]
   [-Include <String[]>]
   [-Exclude <String[]>]
   [-Force]
   [-Credential <PSCredential>]
   [-UseTransaction]
   [-Stream <String[]>]
   [<CommonParameters>]
Get-Item
   [-Path] <string[]>
   [-Filter <string>]
   [-Include <string[]>]
   [-Exclude <string[]>]
   [-Force]
   [-Credential <pscredential>]
    [-UseTransaction]
   [-CodeSigningCert]
   [-DocumentEncryptionCert]
   [-SSLServerAuthentication]
   [-DnsName <string>]
   [-Eku <string[]>]
   [-ExpiringInDays <int>]
   [<CommonParameters>]
Get-Item
   -LiteralPath <string[]>
   [-Filter <string>]
   [-Include <string[]>]
   [-Exclude <string[]>]
   [-Force]
   [-Credential <pscredential>]
   [-UseTransaction]
   [-CodeSigningCert]
   [-DocumentEncryptionCert]
   [-SSLServerAuthentication]
   [-DnsName <string>]
   [-Eku <string[]>]
   [-ExpiringInDays <int>]
   [<CommonParameters>]
Get-Item
   [-Path] <string[]>
   [-Filter <string>]
   [-Include <string[]>]
   [-Exclude <string[]>]
   [-Force]
   [-Credential <pscredential>]
   [-UseTransaction]
   [<CommonParameters>]
Get-Item
   -LiteralPath <string[]>
   [-Filter <string>]
   [-Include <string[]>]
   [-Exclude <string[]>]
   [-Force]
   [-Credential <pscredential>]
   [-UseTransaction]
   [<CommonParameters>]

Описание

Командлет Get-Item получает элемент в указанном расположении. Он не получает содержимое элемента в расположении, если вы не используете подстановочный знак (*) для запроса всего содержимого элемента.

Этот командлет используется поставщиками PowerShell для навигации по различным типам хранилищ данных. Некоторые параметры доступны только для конкретного поставщика. Дополнительные сведения см. в разделе about_Providers.

Примеры

Пример 1. Получение текущего каталога

В этом примере возвращается текущий каталог. Точка ('.') представляет элемент в текущем расположении (а не его содержимое).

Get-Item .

Directory: C:\

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

Пример 2. Получение всех элементов в текущем каталоге

В этом примере возвращаются все элементы в текущем каталоге. Подстановочный знак (*) представляет все содержимое текущего элемента.

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

Пример 3. Получение текущего каталога диска

В этом примере возвращается текущий каталог диска C:. Полученный объект представляет только каталог, а не его содержимое.

Get-Item C:

Пример 4. Получение элементов на указанном диске

В этом примере возвращаются элементы на диске C:. Подстановочный знак (*) представляет все элементы в контейнере, а не только контейнер.

Get-Item C:\*

В PowerShell используйте одну звездочку (*) для получения содержимого вместо традиционного *.*. Формат интерпретируется буквально, поэтому *.* не будет извлекать каталоги или имена файлов без точки.

Пример 5. Получение свойства в указанном каталоге

В этом примере возвращается свойство LastAccessTime каталога C:\Windows. LastAccessTime — это только одно свойство каталогов файловой системы. Чтобы просмотреть все свойства каталога, введите (Get-Item <directory-name>) | Get-Member.

(Get-Item C:\Windows).LastAccessTime

Пример 6. Отображение содержимого раздела реестра

В этом примере показано содержимое раздела реестра Microsoft.PowerShell. Этот командлет можно использовать с поставщиком реестра PowerShell для получения разделов реестра и подразделов, но для получения значений и данных реестра необходимо использовать командлет Get-ItemProperty.

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

Пример 7. Получение элементов в каталоге с исключением

Этот пример получает элементы в каталоге Windows с именами, включающими точку (.), но не начинайтесь с w*. Этот пример работает только в том случае, если путь содержит подстановочный знак (*) для указания содержимого элемента.

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

Параметры

-CodeSigningCert

Это динамический параметр, доступный поставщиком сертификатов .

Чтобы получить сертификаты, имеющие Code Signing в значении свойства EnhancedKeyUsageList, используйте параметр CodeSigningCert.

Дополнительные сведения см. в about_Certificate_Provider.

Тип:SwitchParameter
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Credential

Заметка

Этот параметр не поддерживается поставщиками, установленными с помощью PowerShell. Чтобы олицетворить другого пользователя или повысить свои учетные данные при выполнении этого командлета, используйте Invoke-Command.

Тип:PSCredential
Position:Named
Default value:Current user
Обязательно:False
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-DnsName

Это динамический параметр, доступный поставщиком сертификатов .

Указывает доменное имя или шаблон имени, соответствующие свойству DNSNameList DNSNameList сертификатов, которые получает командлет. Значение этого параметра может быть Unicode или ASCII. Значения Punycode преобразуются в Юникод. Разрешены подстановочные знаки (*).

Этот параметр был повторно введен в PowerShell 7.1

Дополнительные сведения см. в about_Certificate_Provider.

Тип:DnsNameRepresentation
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:True

-DocumentEncryptionCert

Это динамический параметр, доступный поставщиком сертификатов .

Чтобы получить сертификаты, имеющие Document Encryption в значении свойства EnhancedKeyUsageList, используйте параметр DocumentEncryptionCert.

Дополнительные сведения см. в about_Certificate_Provider.

Тип:SwitchParameter
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Eku

Это динамический параметр, доступный поставщиком сертификатов .

Задает текст или текстовый шаблон, соответствующий свойству EnhancedKeyUsageList сертификатов, которые получает командлет. Разрешены подстановочные знаки (*). Свойство EnhancedKeyUsageList содержит понятное имя и поля идентификатора EKU.

Этот параметр был повторно введен в PowerShell 7.1

Дополнительные сведения см. в about_Certificate_Provider.

Тип:String
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:True

-Exclude

Указывает как строковый массив, элемент или элементы, которые этот командлет исключает в операции. Значение этого параметра квалифифициирует параметр Path. Введите элемент пути или шаблон, например *.txt. Разрешены подстановочные знаки. Параметр Исключить действует только в том случае, если команда включает содержимое элемента, например C:\Windows\*, где подстановочный знак указывает содержимое каталога C:\Windows.

Тип:String[]
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:True

-ExpiringInDays

Это динамический параметр, доступный поставщиком сертификатов .

Указывает, что командлет должен возвращать только сертификаты, срок действия которых истекает или до указанного числа дней. Значение нуля (0) получает сертификаты, истекшие.

Этот параметр был повторно введен в PowerShell 7.1

Дополнительные сведения см. в about_Certificate_Provider.

Тип:Int32
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Filter

Указывает фильтр для квалификации параметра Path. Поставщик файловой системы является единственным установленным поставщиком PowerShell, поддерживающим фильтры. Фильтры более эффективны, чем другие параметры. Поставщик применяет фильтр, когда командлет получает объекты, а не фильтрует объекты После их получения. Строка фильтра передается API .NET для перечисления файлов. API поддерживает только подстановочные знаки * и ?.

Тип:String
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:True

-Force

Указывает, что этот командлет получает элементы, к которым не удается получить доступ, например скрытые элементы. Реализация зависит от поставщика к поставщику. Дополнительные сведения см. в разделе about_Providers. Даже при использовании параметра Force командлет не может переопределить ограничения безопасности.

Тип:SwitchParameter
Position:Named
Default value:False
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Include

Указывает, как строковый массив, элемент или элементы, которые этот командлет включает в операцию. Значение этого параметра квалифифициирует параметр Path. Введите элемент пути или шаблон, например *.txt. Разрешены подстановочные знаки. Параметр Include действует только в том случае, если команда включает содержимое элемента, например C:\Windows\*, где подстановочный знак указывает содержимое каталога C:\Windows.

Тип:String[]
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:True

-LiteralPath

Указывает путь к одному или нескольким расположениям. Значение LiteralPath используется точно так же, как и типизированный. Символы не интерпретируются как подстановочные знаки. Если путь содержит escape-символы, заключите его в одинарные кавычки. Одинарные кавычки говорят PowerShell не интерпретировать какие-либо символы как escape-последовательности.

Дополнительные сведения см. в about_Quoting_Rules.

Тип:String[]
Aliases:PSPath
Position:Named
Default value:None
Обязательно:True
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-Path

Указывает путь к элементу. Этот командлет получает элемент в указанном расположении. Разрешены подстановочные знаки. Этот параметр является обязательным, но имя параметра path является необязательным.

Используйте точку (.), чтобы указать текущее расположение. Используйте подстановочный знак (*) для указания всех элементов в текущем расположении.

Тип:String[]
Position:0
Default value:None
Обязательно:True
Принять входные данные конвейера:True
Принять подстановочные знаки:True

-SSLServerAuthentication

Это динамический параметр, доступный поставщиком сертификатов .

Чтобы получить сертификаты с Server Authentication в значении свойства EnhancedKeyUsageList, используйте параметр SSLServerAuthentication.

Дополнительные сведения см. в about_Certificate_Provider.

Тип:SwitchParameter
Position:Named
Default value:None
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Stream

Это динамический параметр, доступный поставщиком файловой системы.

Возвращает указанный альтернативный поток файлов NTFS из файла. Введите имя потока. Поддерживаются подстановочные знаки. Чтобы получить все потоки, используйте звездочку (*). Этот параметр недействителен в папках.

Этот параметр появился в PowerShell 3.0.

Дополнительные сведения см. в about_FileSystem_Provider.

Тип:String[]
Position:Named
Default value:No alternate file streams
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:True

-UseTransaction

Включает команду в активную транзакцию. Этот параметр действителен только в том случае, если выполняется транзакция. Дополнительные сведения см. в about_Transactions.

Тип:SwitchParameter
Aliases:usetx
Position:Named
Default value:False
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

Входные данные

String

Можно передать строку, содержащую путь к этому командлету.

Выходные данные

AliasInfo

Командлет выводит этот тип при доступе к диску Alias:.

X509StoreLocation

X509Store

X509Certificate2

Командлет выводит эти типы при доступе к диску Cert:.

DictionaryEntry

Командлет выводит этот тип при доступе к диску Env:.

DirectoryInfo

FileInfo

Командлет выводит эти типы при доступе к дискам файловой системы.

FunctionInfo

FilterInfo

Командлет выводит эти типы при доступе к Function: дискам.

RegistryKey

Командлет выводит этот тип при доступе к дискам реестра.

PSVariable

Командлет выводит этот тип при доступе к Variable: дискам.

WSManConfigContainerElement

WSManConfigLeafElement

Командлет выводит эти типы при доступе к WSMan: дискам.

Примечания

Windows PowerShell включает следующие псевдонимы для Get-Item:

  • gi

Этот командлет не имеет параметра Recurse, так как он получает только элемент, а не его содержимое. Чтобы получить содержимое элемента рекурсивно, используйте Get-ChildItem.

Чтобы перейти по реестру, используйте этот командлет, чтобы получить разделы реестра и Get-ItemProperty, чтобы получить значения и данные реестра. Значения реестра считаются свойствами раздела реестра.

Этот командлет предназначен для работы с данными, предоставляемыми любым поставщиком. Чтобы вывести список поставщиков, доступных в сеансе, введите Get-PsProvider. Дополнительные сведения см. в разделе about_Providers.