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


Get-ChildItem

Возвращает элементы и дочерние элементы в одном или нескольких указанных расположениях.

Синтаксис

Items (по умолчанию)

Get-ChildItem
    [[-Path] <string[]>]
    [[-Filter] <string>]
    [-Include <string[]>]
    [-Exclude <string[]>]
    [-Recurse]
    [-Depth <uint>]
    [-Force]
    [-Name]
    [<CommonParameters>]

LiteralItems

Get-ChildItem
    [[-Filter] <string>]
    -LiteralPath <string[]>
    [-Include <string[]>]
    [-Exclude <string[]>]
    [-Recurse]
    [-Depth <uint>]
    [-Force]
    [-Name]
    [<CommonParameters>]

Описание

Командлет Get-ChildItem получает элементы в одном или нескольких указанных местоположениях. Если элемент является контейнером, он получает элементы внутри контейнера, известные как дочерние элементы. Параметр Recurse можно использовать для получения элементов во всех дочерних контейнерах, а параметр Глубина — для ограничения количества уровней рекурсивного обхода.

Get-ChildItem не отображает пустые каталоги. Если команда Get-ChildItem включает параметры глубины или рекурсии , пустые каталоги не включаются в выходные данные.

Командлет Get-ChildItem предназначен для работы с элементами, предоставляемыми любым поставщиком. Например, элементы могут быть файлом файловой системы или каталогом, кустом реестра или хранилищем сертификатов. Чтобы вывести список поставщиков, доступных в сеансе, используйте команду Get-PSProvider. Некоторые параметры доступны только для конкретного поставщика. Дополнительные сведения см. в разделе о поставщиках.

Примеры

Пример 1. Получение дочерних элементов из каталога файловой системы

Этот пример получает дочерние элементы из каталога файловой системы. Отображаются имена файлов и подкаталогов. Для пустых расположений команда не возвращает выходные данные и возвращается в строку PowerShell.

Командлет Get-ChildItem использует параметр пути , чтобы указать каталог C:\Test. В консоли PowerShell Get-ChildItem отображает файлы и каталоги.

Get-ChildItem -Path C:\Test
   Directory: C:\Test

Mode                LastWriteTime         Length Name
----                -------------         ------ ----
d-----        2/15/2019     08:29                Logs
-a----        2/13/2019     08:55             26 anotherfile.txt
-a----        2/12/2019     15:40         118014 Command.txt
-a----         2/1/2019     08:43            183 CreateTestFile.ps1
-ar---        2/12/2019     14:31             27 ReadOnlyFile.txt

По умолчанию Get-ChildItem перечисляет режим (атрибуты), время последнего изменения , размер файла (длина), а также имя элемента. Буквы в свойстве режима можно интерпретировать следующим образом:

  • l (ссылка)
  • d (каталог)
  • a (архив)
  • r (только для чтения)
  • h (скрыто)
  • s (система)

Дополнительные сведения о флагах режима см. в about_FileSystem_Provider.

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

В этом примере перечислены только имена элементов в каталоге.

Командлет Get-ChildItem использует параметр пути , чтобы указать каталог C:\Test. Параметр имени возвращает только имена файлов или каталогов из указанного пути. Возвращаемые имена относятся к значению параметра Path.

Get-ChildItem -Path C:\Test -Name
Logs
anotherfile.txt
Command.txt
CreateTestFile.ps1
ReadOnlyFile.txt

Пример 3. Получение дочерних элементов в текущем каталоге и подкаталогах

В этом примере отображаются .txt файлы, расположенные в текущем каталоге и его подкаталогах.

Get-ChildItem -Path .\*.txt -Recurse -Force
    Directory: C:\Test\Logs\Adirectory

Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-a----        2/12/2019     16:16             20 Afile4.txt
-a-h--        2/12/2019     15:52             22 hiddenfile.txt
-a----        2/13/2019     13:26             20 LogFile4.txt

    Directory: C:\Test\Logs\Backup

Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-a----        2/12/2019     16:16             20 ATextFile.txt
-a----        2/12/2019     15:50             20 LogFile3.txt

    Directory: C:\Test\Logs

Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-a----        2/12/2019     16:16             20 Afile.txt
-a-h--        2/12/2019     15:52             22 hiddenfile.txt
-a----        2/13/2019     13:26             20 LogFile1.txt

    Directory: C:\Test

Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-a----        2/13/2019     08:55             26 anotherfile.txt
-a----        2/12/2019     15:40         118014 Command.txt
-a-h--        2/12/2019     15:52             22 hiddenfile.txt
-ar---        2/12/2019     14:31             27 ReadOnlyFile.txt

Командлет Get-ChildItem использует параметр пути для указания C:\Test\*.txt. Path использует подстановочный знак звездочки (*) для указания всех файлов с расширением имени файла .txt. Параметр Recurse выполняет поиск каталога Путь и его подкаталогов, как показано в заголовках Directory:. Параметр Force отображает скрытые файлы, такие как hiddenfile.txt, которые имеют режим ч.

Пример 4. Получение дочерних элементов с помощью параметра Include

В этом примере Get-ChildItem использует параметр Include для поиска определенных элементов из каталога, указанного параметром Path.

# When using the -Include parameter, if you don't include an asterisk in the path
# the command returns no output.
Get-ChildItem -Path C:\Test\ -Include *.txt

Get-ChildItem -Path C:\Test\* -Include *.txt
    Directory: C:\Test

Mode                LastWriteTime         Length Name
----                -------------         ------ ----
-a----        2/13/2019     08:55             26 anotherfile.txt
-a----        2/12/2019     15:40         118014 Command.txt
-ar---        2/12/2019     14:31             27 ReadOnlyFile.txt

Командлет Get-ChildItem использует параметр пути , чтобы указать каталог C:\Test. Параметр Path использует подстановочный знак в виде звёздочки (*), чтобы указать содержимое каталога. Параметр Include использует подстановочный знак звездочки (*) для указания всех файлов с расширением имени файла .txt.

Если используется параметр Include, параметр пути требует подстановочного знака "звёздочка" (*) для указания содержимого каталога. Например: -Path C:\Test\*.

  • Если параметр Recurse добавляется в команду, то завершающая звездочка (*) в параметре Path является необязательной. Параметр Recurse получает элементы из каталога пути и его подкаталогов. Например: -Path C:\Test\ -Recurse -Include *.txt
  • Если конечная звездочка (*) не включена в параметр Path, команда не возвращает выходные данные и возвращается в запрос PowerShell. Например: -Path C:\Test\.

Пример 5. Получение дочерних элементов с помощью параметра Exclude

Выходные данные примера показывают содержимое каталога C:\Test\Logs. Выходные данные являются ссылкой для других команд, использующих параметры Исключение и Рекурсия.

Get-ChildItem -Path C:\Test\Logs
    Directory: C:\Test\Logs

Mode                LastWriteTime         Length Name
----                -------------         ------ ----
d-----        2/15/2019     13:21                Adirectory
d-----        2/15/2019     08:28                AnEmptyDirectory
d-----        2/15/2019     13:21                Backup
-a----        2/12/2019     16:16             20 Afile.txt
-a----        2/13/2019     13:26             20 LogFile1.txt
-a----        2/12/2019     16:24             23 systemlog1.log
Get-ChildItem -Path C:\Test\Logs\* -Exclude A*
    Directory: C:\Test\Logs

Mode                LastWriteTime         Length Name
----                -------------         ------ ----
d-----        2/15/2019     13:21                Backup
-a----        2/13/2019     13:26             20 LogFile1.txt
-a----        2/12/2019     16:24             23 systemlog1.log

Командлет Get-ChildItem использует параметр пути , чтобы указать каталог C:\Test\Logs. Параметр Exclude использует подстановочный знак звездочки (*), чтобы указать, что все файлы или каталоги, начинающиеся с A или a, исключаются из выходных данных.

Если используется параметр Exclude, конечная звездочка (*) в параметре Path является необязательной. Например, -Path C:\Test\Logs или -Path C:\Test\Logs\*.

  • Если в параметр * не включена конечная звездочка (), отображается содержимое параметра Путь. Исключения — это имена файлов или имена подкаталогов, соответствующие значению параметра Exclude.
  • Если в параметр * включена следующая звездочка (), команда рекурсируется в подкаталоги параметра пути . Исключения — это имена файлов или имена подкаталогов, соответствующие значению параметра Exclude.
  • Если параметр Recurse добавляется в команду, выходные данные рекурсии такие же, независимо от того, включает ли параметр Path завершающую звездочку (*).

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

Этот пример получает все ключи реестра из HKEY_LOCAL_MACHINE\HARDWARE.

Get-ChildItem использует параметр для пути с целью указания раздела реестра HKLM:\HARDWARE. Путь и верхний уровень разделов реестра hive отображаются в консоли PowerShell.

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

Get-ChildItem -Path HKLM:\HARDWARE
    Hive: HKEY_LOCAL_MACHINE\HARDWARE

Name             Property
----             --------
ACPI
DESCRIPTION
DEVICEMAP
RESOURCEMAP
UEFI
Get-ChildItem -Path HKLM:\HARDWARE -Exclude D*
   Hive: HKEY_LOCAL_MACHINE\HARDWARE

Name                           Property
----                           --------
ACPI
RESOURCEMAP

Первая команда показывает содержимое ключа реестра HKLM:\HARDWARE. Параметр Exclude указывает Get-ChildItem не возвращать какие-либо подразделы, начинающиеся с D*. В настоящее время параметр Exclude работает только в подразделах, а не в свойствах элементов.

Пример 7: Получение всех сертификатов с полномочиями на подпись кода

В этом примере получается каждый сертификат на диске PowerShell Cert: с полномочиями на подпись кода.

Командлет Get-ChildItem использует параметр Path для указания поставщика сертификатов на диске Cert:. Параметр Recurse выполняет поиск в каталоге, указанном Path, и его подкаталогах. Параметр CodeSigningCert получает только те сертификаты, которые обладают полномочиями для подписания кода.

Get-ChildItem -Path Cert:\* -Recurse -CodeSigningCert

Дополнительные сведения о поставщике сертификатов и диске Cert: см. в about_Certificate_Provider.

Пример 8. Получение элементов с помощью параметра Глубины

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

Get-ChildItem -Path C:\Parent -Depth 2
    Directory: C:\Parent

Mode                LastWriteTime         Length Name
----                -------------         ------ ----
d-----        2/14/2019     10:24                SubDir_Level1
-a----        2/13/2019     08:55             26 file.txt

    Directory: C:\Parent\SubDir_Level1

Mode                LastWriteTime         Length Name
----                -------------         ------ ----
d-----        2/14/2019     10:24                SubDir_Level2
-a----        2/13/2019     08:55             26 file.txt

    Directory: C:\Parent\SubDir_Level1\SubDir_Level2

Mode                LastWriteTime         Length Name
----                -------------         ------ ----
d-----        2/14/2019     10:22                SubDir_Level3
-a----        2/13/2019     08:55             26 file.txt

Командлет Get-ChildItem использует параметр пути для указания C:\Parent. Параметр глубины задает два уровня рекурсии. Get-ChildItem отображает содержимое каталога, указанного параметром пути и двумя уровнями подкаталогов.

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

В PowerShell 6.2 было добавлено альтернативное представление для получения сведений о жесткой ссылке.

Get-ChildItem -Path C:\PathContainingHardLink | Format-Table -View childrenWithHardLink

Пример 10. Выходные данные для операционных систем, отличных от Windows

В PowerShell 7.1 на системах Unix Get-ChildItem обеспечивает Unix-подобный вывод:

PS> Get-ChildItem /etc/r*
    Directory: /etc

UnixMode   User Group    LastWriteTime Size Name
--------   ---- -----    ------------- ---- ----
drwxr-xr-x root wheel  9/30/2019 19:19  128 racoon
-rw-r--r-- root wheel  9/26/2019 18:20 1560 rc.common
-rw-r--r-- root wheel  7/31/2017 17:30 1560 rc.common~previous
-rw-r--r-- root wheel  9/27/2019 20:34 5264 rc.netboot
lrwxr-xr-x root wheel  11/8/2019 15:35   22 resolv.conf -> /private/var/run/resolv.conf
-rw-r--r-- root wheel 10/23/2019 17:41    0 rmtab
-rw-r--r-- root wheel 10/23/2019 17:41 1735 rpc
-rw-r--r-- root wheel  7/25/2017 18:37 1735 rpc~previous
-rw-r--r-- root wheel 10/23/2019 18:42  891 rtadvd.conf
-rw-r--r-- root wheel  8/24/2017 21:54  891 rtadvd.conf~previous

Новые свойства, которые теперь являются частью выходных данных:

  • UnixMode — это разрешения файлов, представленные в системе Unix.
  • пользователь является владельцем файла
  • Группа является владельцем группы
  • Размер — это размер файла или каталога, представленного в системе Unix.

Замечание

Эта функция была перенесена из экспериментального в основной в PowerShell 7.1.

Пример 11. Получение целевого объекта ссылки для точки соединения

Команда dir в командной оболочке Windows показывает целевое расположение точки соединения файловой системы. В PowerShell эти сведения доступны из свойства LinkTarget объекта файловой системы, возвращаемого Get-ChildItem, и отображаются в выходных данных по умолчанию.

PS D:\> New-Item -ItemType Junction -Name tmp -Target $Env:TEMP
PS D:\> Get-ChildItem | Select-Object Name, LinkTarget

Name     LinkTarget
----     ----------
tmp      C:\Users\user1\AppData\Local\Temp

PS D:\> Get-ChildItem

    Directory: D:\

Mode          LastWriteTime    Length Name
----          -------------    ------ ----
l----   12/16/2021  9:29 AM           tmp -> C:\Users\user1\AppData\Local\Temp

Пример 12. Получение целевого объекта ссылки для точки повторного анализа AppX

В этом примере показано, как получить целевую информацию для точки повторного анализа AppX. Приложения Microsoft Store создают точки повторного анализа AppX в каталоге AppData пользователя.

Get-ChildItem ~\AppData\Local\Microsoft\WindowsApps\MicrosoftEdge.exe |
    Select-Object Mode, LinkTarget, LinkType, Name
Mode  LinkTarget LinkType Name
----  ---------- -------- ----
la---                     MicrosoftEdge.exe

В настоящее время Windows не предоставляет способ получения целевой информации для точки повторного анализа AppX. Свойства LinkTarget и LinkType объекта файловой системы пусты.

Параметры

-Attributes

Замечание

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

Возвращает файлы и папки с указанными атрибутами. Этот параметр поддерживает все атрибуты и позволяет указать сложные сочетания атрибутов.

Например, чтобы получить несистемные файлы (а не каталоги), зашифрованные или сжатые, введите:

Get-ChildItem -Attributes !Directory+!System+Encrypted, !Directory+!System+Compressed

Чтобы найти файлы и папки с часто используемыми атрибутами, используйте параметр Атрибуты. Или параметры Каталог, Файл, Скрытые, Только для чтенияи Система.

Параметр атрибутов поддерживает следующие значения:

  • Archive
  • Compressed
  • Device
  • Directory
  • Encrypted
  • Hidden
  • IntegrityStream
  • Normal
  • NoScrubData
  • NotContentIndexed
  • Offline
  • ReadOnly
  • ReparsePoint
  • SparseFile
  • System
  • Temporary

Описание этих атрибутов см. в перечислении FileAttributes.

Чтобы объединить атрибуты, используйте следующие операторы:

  • ! (НЕ)
  • + (AND)
  • , (OR)

Не используйте пробелы между оператором и его атрибутом. Пробелы принимаются после запятых.

Для распространенных атрибутов используйте следующие аббревиаций:

  • D (каталог)
  • H (скрыто)
  • R (только для чтения)
  • S (система)

Свойства параметра

Тип:

FlagsExpression<T>[FileAttributes]

Default value:None
Допустимые значения:Archive, Compressed, Device, Directory, Encrypted, Hidden, IntegrityStream, Normal, NoScrubData, NotContentIndexed, Offline, ReadOnly, ReparsePoint, SparseFile, System, Temporary
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-CodeSigningCert

Замечание

Этот параметр доступен только в поставщике сертификатов .

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

Свойства параметра

Тип:SwitchParameter
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-Depth

Этот параметр добавлен в PowerShell 5.0 и позволяет управлять глубиной рекурсии. По умолчанию Get-ChildItem отображает содержимое родительского каталога. Параметр глубины определяет количество уровней подкаталогов, включенных в рекурсию, и отображает содержимое.

Например, -Depth 2 включает каталог параметра пути, первый уровень подкаталогов и второй уровень подкаталогов. По умолчанию имена каталогов и имена файлов включены в выходные данные.

Замечание

На компьютере с Windows из PowerShell или cmd.exeможно отобразить графическое представление структуры каталога с помощью команды tree.com.

Свойства параметра

Тип:UInt32
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-Directory

Замечание

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

Чтобы получить список каталогов, используйте параметр каталога или параметр Атрибуты со свойством каталога. Вы можете использовать параметр Recurse с директорией Directory.

Свойства параметра

Тип:SwitchParameter
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False
Aliases:реклама

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-DnsName

Замечание

Этот параметр доступен только в поставщике сертификатов .

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

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

Свойства параметра

Тип:DnsNameRepresentation
Default value:None
Поддерживаются подстановочные знаки:True
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-DocumentEncryptionCert

Замечание

Этот параметр доступен только в поставщике сертификатов .

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

Свойства параметра

Тип:SwitchParameter
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-Eku

Замечание

Этот параметр доступен только в поставщике сертификатов .

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

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

Свойства параметра

Тип:String
Default value:None
Поддерживаются подстановочные знаки:True
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-Exclude

Указывает массив одного или нескольких шаблонов строк, которые должны быть сопоставлены, так как командлет получает дочерние элементы. Любой соответствующий элемент исключается из выходных данных. Введите элемент пути или шаблон, например *.txt или A*. Подстановочные знаки принимаются.

Звездочка в конце (*) в параметре Path является необязательна. Например, -Path C:\Test\Logs или -Path C:\Test\Logs\*. Если завершающая звездочка (*) включена, команда рекурсивно обрабатывает подкаталоги параметра Путь. Без звездочки (*), отображается содержимое параметра пути . Дополнительные сведения включены в пример 5 и раздел "Заметки".

Параметры Включить и исключить можно использовать вместе. Однако исключения применяются после включений, что может повлиять на конечный результат.

Свойства параметра

Тип:

String[]

Default value:None
Поддерживаются подстановочные знаки:True
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-ExpiringInDays

Замечание

Этот параметр доступен только в поставщике сертификатов .

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

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

Свойства параметра

Тип:Int32
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-File

Замечание

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

Чтобы получить список файлов, используйте параметр file. Вы можете использовать параметр Recurse с File.

Свойства параметра

Тип:SwitchParameter
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False
Aliases:аф

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-Filter

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

Свойства параметра

Тип:String
Default value:None
Поддерживаются подстановочные знаки:True
DontShow:False

Наборы параметров

(All)
Position:1
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

Замечание

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

По умолчанию командлет Get-ChildItem отображает символьные ссылки на каталоги, найденные во время рекурсии, но не выполняет в них погружения. Используйте параметр FollowSymlink для поиска каталогов, предназначенных для этих символьных ссылок. FollowSymlink является динамическим параметром и поддерживается только в поставщике FileSystem.

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

Тип:SwitchParameter
Default value:None
Поддерживаются подстановочные знаки:False
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

-Hidden

Замечание

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

Чтобы получить только скрытые элементы, используйте параметр Hidden или параметр Атрибуты со свойством Hidden. По умолчанию Get-ChildItem не отображает скрытые элементы. Используйте параметр Force для получения скрытых элементов.

Свойства параметра

Тип:SwitchParameter
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False
Aliases:ah, х

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-Include

Указывает массив одного или нескольких шаблонов строк, которые должны быть сопоставлены, так как командлет получает дочерние элементы. Любой соответствующий элемент включается в выходные данные. Введите элемент пути или шаблон, например "*.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, LP

Наборы параметров

LiteralItems
Position:Named
Обязательно:True
Значение из конвейера:False
Значение из конвейера по имени свойства:True
Значение из оставшихся аргументов:False

-Name

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

Свойства параметра

Тип:SwitchParameter
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-Path

Указывает путь к одному или нескольким расположениям. Если не указано, расположение по умолчанию — текущий каталог (.). Подстановочные знаки принимаются. Используйте осторожность при использовании параметра пути с параметром Recurse. Дополнительные сведения см. в разделе NOTES этой статьи.

Свойства параметра

Тип:

String[]

Default value:Current directory
Поддерживаются подстановочные знаки:True
DontShow:False

Наборы параметров

Items
Position:0
Обязательно:False
Значение из конвейера:True
Значение из конвейера по имени свойства:True
Значение из оставшихся аргументов:False

-ReadOnly

Замечание

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

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

Свойства параметра

Тип:SwitchParameter
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False
Aliases:ар

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-Recurse

Возвращает элементы в указанных локациях и во всех дочерних элементах этих локаций.

Свойства параметра

Тип:SwitchParameter
Default value:False
Поддерживаются подстановочные знаки:False
DontShow:False
Aliases:s, р

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-SSLServerAuthentication

Замечание

Этот параметр доступен только в поставщике сертификатов .

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

Свойства параметра

Тип:SwitchParameter
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False

Наборы параметров

(All)
Position:Named
Обязательно:False
Значение из конвейера:False
Значение из конвейера по имени свойства:False
Значение из оставшихся аргументов:False

-System

Замечание

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

Возвращает только системные файлы и каталоги. Чтобы получить только системные файлы и папки, используйте параметр System или параметр Атрибутыsystem.

Свойства параметра

Тип:SwitchParameter
Default value:None
Поддерживаются подстановочные знаки:False
DontShow:False
Aliases:как

Наборы параметров

(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: дискам.

String

При использовании параметра Name этот командлет возвращает имена объектов в виде строк.

Примечания

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

  • Все платформы:
    • dir, gci
  • Виндоус:
    • ls

поведение рекурсии с параметром Path:

При использовании Get-ChildItem -Recurse с параметром пути командлет выполняет поиск последнего компонента пути независимо от того, является ли он шаблоном подстановочного знака или литеральным именем.

  • Если последний компонент пути соответствует существующей непосредственной подкаталоге целевого каталога, командлет выполняет рекурсивное перечисление в соответствующем каталоге.
  • Если последний компонент пути не соответствует существующей непосредственной подкаталоге целевого каталога, командлет рекурсивно выполняет поиск иерархии целевого каталога для элементов, соответствующих последнему компоненту пути.

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

  • Если существует совпадение между непосредственными дочерними элементами, командлет выполняет рекурсивное перечисление для соответствующих элементов. Сопоставление с подстановочными знаками происходит только один раз на верхнем уровне целевого каталога. Результаты обрабатываются так, как если бы они были индивидуально переданы параметру LiteralPath.
  • Если последний компонент пути не соответствует элементам верхнего уровня, возникает ошибка.

Следует избегать использования параметра пути с параметром Recurse. Для достижения наилучших результатов:

  • Используйте LiteralPath, чтобы указать целевой каталог, чтобы избежать активации рекурсивного поиска для последнего компонента пути.
  • Используйте фильтру или включить параметры, чтобы указать подстановочные знаки или литеральные шаблоны, которые следует искать на каждом уровне иерархии целевого каталога.