Извлекает элементы и их потомки из заданных местоположений.
Синтаксис
Get-ChildItem [[-Path] <string[]>] [[-Filter] <string>] [-Exclude <string[]>] [-Force] [-Include <string[]>] [-Name] [-Recurse] [-UseTransaction] [<CommonParameters>] Get-ChildItem [-LiteralPath] <string[]> [[-Filter] <string>] [-Exclude <string[]>] [-Force] [-Include <string[]>] [-Name] [-Recurse] [-UseTransaction] [<CommonParameters>]
Описание
Командлет Get-ChildItem получает элементы из заданных местоположений. Если элемент является контейнером, данный командлет получает из контейнера элементы, которые называются дочерними элементами. Для извлечения элементов из всех дочерних контейнеров можно использовать параметр Recurse.
Местоположение может являться расположением в файловой системе, например каталогом, либо расположением, предоставляемым другим поставщиком, например кустом реестра или хранилищем сертификатов.
Параметры
-Exclude <string[]>
Исключает указанные элементы. Значение этого параметра определяет значение параметра Path. Введите элемент пути или шаблон, например "*.txt". Подстановочные знаки разрешены.
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-Filter <string>
Задает фильтр с использованием формата или языка поставщика. Значение этого параметра определяет значение параметра Path. Синтаксис фильтра, в том числе использование подстановочных знаков, зависит от поставщика. Фильтры эффективнее других параметров, потому что поставщик применяет их при извлечении объектов (вместо использования Windows PowerShell для фильтрации извлеченных объектов).
Обязательно? |
false |
Позиция? |
2 |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-Force
Позволяет командлету получать элементы, которые недоступны пользователю другими способами, например скрытые или системные файлы. Реализация варьируется от поставщика к поставщику. Дополнительные сведения см. в разделе About_Providers. Даже при использовании параметра Force командлет не может переопределить ограничения безопасности.
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-Include <string[]>
Извлекает только указанные элементы. Значение этого параметра определяет значение параметра Path. Введите элемент пути или шаблон, например "*.txt". Подстановочные знаки разрешены.
Параметр Include действует только в том случае, если команда включает параметр Recurse или путь указывает на содержимое каталога, например "C:\Windows\*", где подстановочный знак определяет содержимое каталога "C:\Windows".
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-LiteralPath <string[]>
Задает путь к одному или нескольким местоположениям. В отличие от значения параметра Path, значение параметра LiteralPath используется точно в том виде, в котором оно введено. Никакие символы не интерпретируются как подстановочные знаки. Если путь включает escape-символы, его нужно заключить в одиночные кавычки. Одиночные кавычки указывают оболочке Windows PowerShell, что никакие символы не следует интерпретировать как escape-символы.
Обязательно? |
true |
Позиция? |
1 |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
true (ByPropertyName) |
Принимать подстановочные знаки? |
false |
-Name
Извлекает только имена элементов, содержащихся в соответствующих местоположениях. Если вывод этой команды передать по конвейеру другой команде, будут переданы только имена элементов.
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-Path <string[]>
Задает путь к одному или нескольким местоположениям. Подстановочные знаки разрешены. Местоположением по умолчанию является текущий каталог (.).
Обязательно? |
false |
Позиция? |
1 |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
true (ByValue, ByPropertyName) |
Принимать подстановочные знаки? |
false |
-Recurse
Получает элементы, содержащиеся в указанных местоположениях и во всех дочерних элементах этих местоположений.
Параметр Recurse работает только в том случае, если путь указывает на контейнер с дочерними элементами, например "C:\Windows" или "C:\Windows\*", и не работает, если путь указывает на элементы без дочерних элементов, например "C:\Windows\*.exe".
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
-UseTransaction
Включает команду в активную транзакцию. Этот параметр допустим, только если транзакция выполняется. Дополнительные сведения см. в разделе about_Transactions.
Обязательно? |
false |
Позиция? |
named |
Значение по умолчанию |
|
Принимать входные данные из конвейера? |
false |
Принимать подстановочные знаки? |
false |
<CommonParameters>
Данный командлет поддерживает общие параметры -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer и -OutVariable. Дополнительные сведения см. в разделе about_Commonparameters.
Ввод и вывод
Входным типом является тип объектов, которые можно передавать командлету по конвейеру. Возвращаемым типом является тип объектов, возвращаемых командлетом.
Входные данные |
System.String Строку, содержащую путь, можно передать командлету Get-ChildItem по конвейеру. |
Выходные данные |
Объект. Тип объекта, возвращаемого командлетом Get-ChildItem, определяется используемым поставщиком. |
Примечания
Командлет Get-ChildItem также можно вызывать с помощью встроенных псевдонимов "ls", "dir" и "gci". Дополнительные сведения см. в разделе About_Aliases.
По умолчанию командлет Get-ChildItem не возвращает скрытые элементы. Чтобы получить скрытые элементы, используйте параметр -Force.
Командлет Get-ChildItem предназначен для работы с данными, предоставляемыми любым поставщиком. Чтобы получить список поставщиков, доступных в текущем сеансе, введите команду "Get-PsProvider". Дополнительные сведения см. в разделе About_Providers.
Пример 1
C:\PS>get-childitem Описание ----------- Эта команда извлекает дочерние элементы, расположенные в текущем местоположении. Если текущее местоположение является каталогом файловой системы, команда извлекает файлы и вложенные каталоги данного каталога. Если элемент не имеет потомков, то после выполнения команды ничего не показывается. По умолчанию для каждого файла отображаются следующие сведения: режим (атрибуты), время последней записи, размер файла (длина) и имя. Допустимыми значениями режима являются: d (каталог), a (архивный), r (только чтение), h (скрытый) и s (системный).
Пример 2
C:\PS>get-childitem . -include *.txt -recurse -force Описание ----------- Эта команда извлекает все файлы с расширением ".txt" из текущего каталога и вложенных в него каталогов. Точка (.) представляет текущий каталог, а параметр Include задает расширение файла. Параметр Recurse включает в Windows PowerShell режим рекурсивного извлечения объектов, а также показывает, что команда применяется к указанному каталогу и его содержимому. Параметр Force добавляет скрытые файлы в набор отображаемых данных.
Пример 3
C:\PS>get-childitem c:\windows\logs\* -include *.txt -exclude A* Описание ----------- Эта команда выдает список всех TXT-файлов вложенного каталога Logs, за исключением тех, имена которых начинаются с буквы "A". Для обозначения содержимого вложенного каталога Logs используется подстановочный знак (*). В команде Get-ChildItem не указан параметр Recurse, поэтому автоматическое включение содержимого каталога не выполняется. Содержимое необходимо задать вручную.
Пример 4
C:\PS>get-childitem registry::hklm\software Описание ----------- Эта команда извлекает все подразделы из раздела реестра HKEY_LOCAL_MACHINE\SOFTWARE на локальном компьютере.
Пример 5
C:\PS>get-childitem -name Описание ----------- Эта команда извлекает только имена элементов из текущей папки.
Пример 6
C:\PS>get-childitem cert:\. -recurse -codesigningcert Описание ----------- Эта команда извлекает все сертификаты из хранилища сертификатов, для которых выдано разрешение на подписывание кода. В команде используется командлет Get-ChildItem. Путь задает диск Cert:, предоставляемый поставщиком сертификатов Windows PowerShell. Знак обратной косой черты (\) задает подкаталог хранилища сертификатов, а точка (.) означает текущий каталог, который является корневым каталогом хранилища сертификатов. Параметр Recurse задает рекурсивный поиск. CodeSigningCertificate является динамическим параметром, обеспечивающим извлечение только сертификатов для подписывания кода. Чтобы получить дополнительные сведения, введите команду "get-help certificate".
Пример 7
C:\PS>get-childitem * -include *.exe Описание ----------- Эта команда извлекает все файлы с расширением ".exe"в текущем каталоге. Подстановочный знак (*) обозначает содержимое текущего каталога (не контейнера). При использовании параметра Include без параметра Recurse, задаваемый путь должен указывать на содержимое, а не на контейнер.