Get-Item
Возвращает элемент в указанном расположении.
Синтаксис
Path (Default) - FileSystem provider
Get-Item
[-Path] <String[]>
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-Force]
[-Credential <PSCredential>]
[-UseTransaction]
[-Stream <String[]>]
[<CommonParameters>]
LiteralPath - FileSystem provider
Get-Item
-LiteralPath <String[]>
[-Filter <String>]
[-Include <String[]>]
[-Exclude <String[]>]
[-Force]
[-Credential <PSCredential>]
[-UseTransaction]
[-Stream <String[]>]
[<CommonParameters>]
Path (Default) - Certificate provider
Get-Item
[-Path] <string[]>
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Force]
[-Credential <pscredential>]
[-UseTransaction]
[-CodeSigningCert]
[-DocumentEncryptionCert]
[-SSLServerAuthentication]
[-DnsName <string>]
[-Eku <string[]>]
[-ExpiringInDays <int>]
[<CommonParameters>]
LiteralPath - Certificate provider
Get-Item
-LiteralPath <string[]>
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Force]
[-Credential <pscredential>]
[-UseTransaction]
[-CodeSigningCert]
[-DocumentEncryptionCert]
[-SSLServerAuthentication]
[-DnsName <string>]
[-Eku <string[]>]
[-ExpiringInDays <int>]
[<CommonParameters>]
Path (Default) - All providers
Get-Item
[-Path] <string[]>
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Force]
[-Credential <pscredential>]
[-UseTransaction]
[<CommonParameters>]
LiteralPath - All providers
Get-Item
-LiteralPath <string[]>
[-Filter <string>]
[-Include <string[]>]
[-Exclude <string[]>]
[-Force]
[-Credential <pscredential>]
[-UseTransaction]
[<CommonParameters>]
Описание
Командлет Get-Item получает элемент в указанном расположении. Он не получает содержимое элемента в указанном месте, если вы не используете подстановочный знак (*), чтобы запросить все содержимое элемента.
Этот командлет используется поставщиками PowerShell для навигации по различным типам хранилищ данных. Некоторые параметры доступны только для конкретного поставщика. Дополнительные сведения см. в разделе о поставщиках.
Примеры
Пример 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 |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-Credential
Замечание
Этот параметр не поддерживается поставщиками, установленными с помощью PowerShell. Чтобы олицетворить другого пользователя или повысить свои учетные данные при выполнении этого командлета, используйте Invoke-Command.
Свойства параметров
| Тип: | PSCredential |
| Default value: | Current user |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | True |
| Значение из оставшихся аргументов: | False |
-DnsName
Это динамический параметр, доступный поставщиком сертификатов .
Указывает доменное имя или шаблон имени, которые должны соответствовать свойству DNSNameList сертификатов, получаемых командлетом. Значение этого параметра может быть Unicode или ASCII. Значения Punycode преобразуются в Юникод. Разрешены подстановочные символы (*).
Этот параметр был повторно введен в PowerShell 7.1
Для получения дополнительной информации см. about_Certificate_Provider.
Свойства параметров
| Тип: | DnsNameRepresentation |
| Default value: | None |
| Поддерживаются подстановочные знаки: | True |
| DontShow: | False |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-DocumentEncryptionCert
Это динамический параметр, доступный поставщиком сертификатов .
Чтобы получить сертификаты, имеющие Document Encryption в значении свойства EnhancedKeyUsageList, используйте параметр DocumentEncryptionCert.
Для получения дополнительной информации см. about_Certificate_Provider.
Свойства параметров
| Тип: | SwitchParameter |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-Eku
Это динамический параметр, доступный поставщиком сертификатов .
Задает текст или текстовый шаблон, соответствующий свойству EnhancedKeyUsageList сертификатов, которые получает командлет. Разрешены подстановочные символы (*).
Свойство EnhancedKeyUsageList содержит понятное имя и поля идентификатора EKU.
Этот параметр был повторно введен в PowerShell 7.1
Для получения дополнительной информации см. about_Certificate_Provider.
Свойства параметров
| Тип: | String |
| Default value: | None |
| Поддерживаются подстановочные знаки: | True |
| DontShow: | False |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-Exclude
Указывает как строковый массив, элемент или элементы, которые этот командлет исключает в операции. Значение этого параметра квалифифициирует параметр Path. Введите элемент пути или шаблон, например *.txt. Разрешено использование подстановочных символов. Параметр Исключить действует только в том случае, если команда включает содержимое элемента, например C:\Windows\*, где подстановочный знак указывает содержимое каталога C:\Windows.
Свойства параметров
| Тип: | String[] |
| Default value: | None |
| Поддерживаются подстановочные знаки: | True |
| DontShow: | False |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-ExpiringInDays
Это динамический параметр, доступный поставщиком сертификатов .
Указывает, что командлет должен возвращать только сертификаты, срок действия которых истекает в течение или до указанного числа дней. Значение ноль (0) используется для получения сертификатов, срок действия которых истек.
Этот параметр был повторно введен в PowerShell 7.1
Для получения дополнительной информации см. about_Certificate_Provider.
Свойства параметров
| Тип: | Int32 |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-Filter
Указывает фильтр для квалификации параметра Path. Поставщик файловой системы является единственным установленным поставщиком PowerShell, поддерживающим фильтры. Фильтры более эффективны, чем другие параметры. Поставщик применяет фильтр, когда командлет получает объекты, вместо того чтобы PowerShell фильтровал объекты после их получения. Строка фильтра передается API .NET для перечисления файлов. API поддерживает только подстановочные знаки * и ?.
Свойства параметров
| Тип: | String |
| Default value: | None |
| Поддерживаются подстановочные знаки: | True |
| DontShow: | False |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-Force
Указывает, что этот командлет получает элементы, к которым в противном случае невозможно получить доступ, например, скрытые элементы. Реализация зависит от поставщика к поставщику. Дополнительные сведения см. в разделе о поставщиках. Даже при использовании параметра Force командлет не может обойти ограничения безопасности.
Свойства параметров
| Тип: | SwitchParameter |
| Default value: | False |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-Include
Указывает, как строковый массив, элемент или элементы, которые этот командлет включает в операцию. Значение этого параметра квалифифициирует параметр Path. Введите элемент пути или шаблон, например *.txt. Разрешено использование подстановочных символов. Параметр Include действует только в том случае, если команда включает содержимое элемента, например C:\Windows\*, где подстановочный знак указывает содержимое каталога C:\Windows.
Свойства параметров
| Тип: | String[] |
| Default value: | None |
| Поддерживаются подстановочные знаки: | True |
| DontShow: | False |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-LiteralPath
Указывает путь к одному или нескольким расположениям. Значение LiteralPath используется точно так, как оно введено. Никакие символы не интерпретируются как подстановочные знаки. Если путь содержит escape-символы, заключите его в одинарные кавычки. Одинарные кавычки указывают PowerShell на то, что не следует интерпретировать какие-либо символы как управляющие последовательности.
Дополнительную информацию см. в разделе about_Quoting_Rules.
Свойства параметров
| Тип: | String[] |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
| Aliases: | PSPath |
Наборы параметров
LiteralPath
| Position: | Named |
| Обязательно: | True |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | True |
| Значение из оставшихся аргументов: | False |
-Path
Указывает путь к элементу. Этот командлет извлекает элемент в указанном расположении. Разрешено использование подстановочных символов. Этот параметр является обязательным, но имя параметра path является необязательным.
Используйте точку (.), чтобы указать текущее расположение. Используйте подстановочный знак (*) для указания всех элементов в текущем расположении.
Свойства параметров
| Тип: | String[] |
| Default value: | None |
| Поддерживаются подстановочные знаки: | True |
| DontShow: | False |
Наборы параметров
Path
| Position: | 0 |
| Обязательно: | True |
| Значение из конвейера: | True |
| Значение из конвейера по имени свойства: | True |
| Значение из оставшихся аргументов: | False |
-SSLServerAuthentication
Это динамический параметр, доступный поставщиком сертификатов .
Чтобы получить сертификаты с Server Authentication в значении свойства EnhancedKeyUsageList, используйте параметр SSLServerAuthentication.
Для получения дополнительной информации см. about_Certificate_Provider.
Свойства параметров
| Тип: | SwitchParameter |
| Default value: | None |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-Stream
Это динамический параметр, доступный поставщиком файловой системы
Возвращает указанный альтернативный поток файлов NTFS из файла. Введите имя потока. Поддерживаются подстановочные знаки. Чтобы получить все потоки, используйте звездочку (*). Этот параметр недействителен в папках.
Этот параметр появился в PowerShell 3.0.
Дополнительные сведения см. в about_FileSystem_Provider.
Свойства параметров
| Тип: | String[] |
| Default value: | No alternate file streams |
| Поддерживаются подстановочные знаки: | True |
| DontShow: | False |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
-UseTransaction
Включает команду в активную транзакцию. Этот параметр действителен только в том случае, если выполняется транзакция. Дополнительные сведения см. в about_Transactions.
Свойства параметров
| Тип: | SwitchParameter |
| Default value: | False |
| Поддерживаются подстановочные знаки: | False |
| DontShow: | False |
| Aliases: | usetx |
Наборы параметров
(All)
| Position: | Named |
| Обязательно: | False |
| Значение из конвейера: | False |
| Значение из конвейера по имени свойства: | False |
| Значение из оставшихся аргументов: | False |
CommonParameters
Этот командлет поддерживает общие параметры: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction и -WarningVariable. Дополнительные сведения см. в разделе about_CommonParameters.
Входные данные
String
Можно передать строку, содержащую путь к этому командлету.
Выходные данные
AliasInfo
Командлет выводит этот тип при доступе к диску Alias:.
X509StoreLocation
X509Store
X509Certificate2
Командлет выводит эти типы при доступе к диску Cert:.
DictionaryEntry
Командлет выводит этот тип при доступе к диску Env:.
DirectoryInfo
FileInfo
Командлет выводит эти типы при доступе к дискам FileSystem.
FunctionInfo
FilterInfo
Командлет выводит эти типы при доступе к Function: дискам.
RegistryKey
Командлет выводит этот тип при доступе к реестровым дискам.
PSVariable
Командлет выводит этот тип при доступе к дискам Variable:.
WSManConfigContainerElement
WSManConfigLeafElement
Командлет выводит эти типы при доступе к WSMan: дискам.
Примечания
Windows PowerShell включает следующие псевдонимы для Get-Item:
gi
Этот командлет не имеет параметра Recurse, так как он получает только элемент, а не его содержимое.
Чтобы получить содержимое элемента рекурсивно, используйте Get-ChildItem.
Чтобы просматривать реестр, используйте этот командлет, чтобы получить ключи реестра, и Get-ItemProperty, чтобы получить значения и данные. Значения реестра считаются свойствами раздела реестра.
Этот командлет предназначен для работы с данными, предоставляемыми любым провайдером. Чтобы вывести список поставщиков, доступных в сеансе, введите Get-PSProvider. Дополнительные сведения см. в разделе о поставщиках.