Get-Item

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

Синтаксис

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 получает элемент в указанном расположении. Он не получает содержимое элемента в расположении, если вы не используете подстановочный знак (*) для запроса всего содержимого элемента.

Этот командлет используется поставщиками 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. Получение свойства в указанном каталоге

В этом примере возвращается свойство C:\WindowsLastAccessTime каталога. 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*"

Пример 8. Получение сведений о жесткой ссылке

В PowerShell 6.2 было добавлено альтернативное представление для получения сведений о жесткой связи. Чтобы получить сведения о жесткой ссылке, передайте выходные данные в Format-Table -View childrenWithHardlink

Get-Item -Path C:\PathWhichIsAHardLink | Format-Table -View childrenWithHardlink

Параметры

-Credential

Примечание

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

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

-Exclude

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

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

-Filter

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

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

-Force

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

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

-Include

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

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

-LiteralPath

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

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

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

-Path

Определяет путь к элементу. Этот командлет получает элемент в указанном расположении. Можно использовать подстановочные знаки. Этот параметр является обязательным, но имя параметра Path является необязательным.

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

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

-Stream

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

Stream — это динамический параметр, добавляемый поставщиком FileSystem в Get-Item командлет . Этот параметр работает только на дисках с файловой системой.

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

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

String

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

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

Object

Этот командлет возвращает объекты, которые он получает. Тип определяется типом объектов в пути.

Примечания

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

Для навигации по реестру используйте этот командлет для получения разделов реестра и для получения значений Get-ItemProperty и данных реестра. Параметры реестра являются свойствами раздела реестра.

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