Find-Module
Находит модули в репозитории, которые соответствуют указанным критериям.
Синтаксис
Find-Module
[[-Name] <string[]>]
[-MinimumVersion <string>]
[-MaximumVersion <string>]
[-RequiredVersion <string>]
[-AllVersions]
[-IncludeDependencies]
[-Filter <string>]
[-Tag <string[]>]
[-Includes <string[]>]
[-DscResource <string[]>]
[-RoleCapability <string[]>]
[-Command <string[]>]
[-Proxy <uri>]
[-ProxyCredential <pscredential>]
[-Repository <string[]>]
[-Credential <pscredential>]
[-AllowPrerelease]
[<CommonParameters>]
Описание
Командлет Find-Module
находит модули в репозитории, которые соответствуют указанным критериям.
Find-Module
возвращает объект PSRepositoryItemInfo для каждого найденного модуля. Объекты можно отправить в конвейер командлетам, таким как Install-Module
.
При первой Find-Module
попытке использовать репозиторий может появиться запрос на установку обновлений.
Если источник репозитория не зарегистрирован с помощью Register-PSRepository
командлета, возвращается ошибка.
Find-Module
возвращает последнюю версию модуля, если не используются параметры, ограничивающие версию. Чтобы получить список версий модуля в репозитории, используйте параметр AllVersions.
Если указан параметр MinimumVersion , Find-Module
возвращает версию модуля, которая равна или больше минимальной. Если в репозитории доступна более новая версия, возвращается более новая версия.
Если указан параметр MaximumVersion , Find-Module
возвращает последнюю версию модуля, которая не превышает указанную версию.
Если указан параметр RequiredVersion , Find-Module
возвращается только версия модуля, которая точно соответствует указанной версии. Find-Module
выполняет поиск по всем доступным модулям, так как могут возникать конфликты имен между источниками.
В следующих примерах коллекция PowerShell используется в качестве единственного зарегистрированного репозитория. Get-PSRepository
отображает зарегистрированные репозитории. Если у вас несколько зарегистрированных репозиториев, используйте -Repository
параметр , чтобы указать имя репозитория.
Примеры
Пример 1. Поиск модуля по имени
В этом примере выполняется поиск модуля в репозитории по умолчанию.
Find-Module -Name PowerShellGet
Version Name Repository Description
------- ---- ---------- -----------
2.1.0 PowerShellGet PSGallery PowerShell module with commands for discovering...
Командлет Find-Module
использует параметр Name для указания модуля PowerShellGet .
Пример 2. Поиск модулей с похожими именами
В этом примере используется подстановочный знак звездочки (*
) для поиска модулей с похожими именами.
Find-Module -Name PowerShell*
Version Name Repository Description
------- ---- ---------- -----------
0.4.0 powershell-yaml PSGallery Powershell module for serializing and...
2.1.0 PowerShellGet PSGallery PowerShell module with commands for...
1.9 Powershell.Helper.Extension PSGallery # Powershell.Helper.Extension...
3.1 PowerShellHumanizer PSGallery PowerShell Humanizer wraps Humanizer...
4.0 PowerShellISEModule PSGallery a module that adds capability to the ISE
Командлет Find-Module
использует параметр Name с подстановочным знаком звездочки (*
), чтобы найти все модули, содержащие PowerShell.
Пример 3. Поиск модуля по минимальной версии
В этом примере выполняется поиск минимальной версии модуля. Если репозиторий содержит более новую версию модуля, возвращается более новая версия.
Find-Module -Name PowerShellGet -MinimumVersion 1.6.5
Version Name Repository Description
------- ---- ---------- -----------
2.1.0 PowerShellGet PSGallery PowerShell module with commands for discovering...
Командлет Find-Module
использует параметр Name для указания модуля PowerShellGet . MinimumVersion указывает версию 1.6.5. Find-Module
возвращает powerShellGet версии 2.1.0 , так как она превышает минимальную версию и является самой последней версией.
Пример 4. Поиск модуля по определенной версии
В этом примере возвращается объект , представляющий конкретную версию модуля. Если указанная версия не найдена, возвращается ошибка.
Find-Module -Name PowerShellGet -RequiredVersion 1.6.5
Version Name Repository Description
------- ---- ---------- -----------
1.6.5 PowerShellGet PSGallery PowerShell module with commands for discovering...
Командлет Find-Module
использует параметр Name для указания модуля PowerShellGet . Параметр RequiredVersion указывает версию 1.6.5.
Пример 5. Поиск модуля в определенном репозитории
В этом примере используется параметр Repository для поиска модуля в определенном репозитории.
Find-Module -Name PowerShellGet -Repository PSGallery
Version Name Repository Description
------- ---- ---------- -----------
2.1.0 PowerShellGet PSGallery PowerShell module with commands for discovering...
Командлет Find-Module
использует параметр Name для указания модуля PowerShellGet . Параметр Repository указывает на поиск в репозитории PSGallery .
Пример 6. Поиск модуля в нескольких репозиториях
В этом примере используется для Register-PSRepository
указания репозитория. Find-Module
использует репозиторий для поиска модуля.
Register-PSRepository -Name MySource -SourceLocation https://www.myget.org/F/powershellgetdemo/
Find-Module -Name Contoso* -Repository PSGallery, MySource
Repository Version Name Description
---------- ------- ---- -----------
PSGallery 2.0.0.0 ContosoServer Cmdlets and DSC resources for managing Contoso Server...
MySource 1.2.0.0 ContosoClient Cmdlets and DSC resources for managing Contoso Client...
Командлет Register-PSRepository
регистрирует новый репозиторий. Параметр Name присваивает имя MySource. Параметр SourceLocation указывает адрес репозитория.
Командлет Find-Module
использует параметр Name с подстановочным знаком звездочки (*
), чтобы указать модуль Contoso . Параметр Repository указывает на поиск в двух репозиториях: PSGallery и MySource.
Пример 7. Поиск модуля, содержащего ресурс DSC
Эта команда возвращает модули, содержащие ресурсы DSC. Параметр Includes имеет четыре предопределенные функции, которые используются для поиска в репозитории. Используйте tab-complete для отображения четырех функций, поддерживаемых параметром Includes .
Find-Module -Repository PSGallery -Includes DscResource
Version Name Repository Description
------- ---- ---------- -----------
2.7.0 Carbon PSGallery Carbon is a PowerShell module...
8.5.0.0 xPSDesiredStateConfiguration PSGallery The xPSDesiredStateConfiguration module...
1.3.1 PackageManagement PSGallery PackageManagement (a.k.a. OneGet) is...
2.7.0.0 xWindowsUpdate PSGallery Module with DSC Resources...
3.2.0.0 xCertificate PSGallery This module includes DSC resources...
3.1.0.0 xPowerShellExecutionPolicy PSGallery This DSC resource can change the user...
Командлет Find-Module
использует параметр Repository для поиска в репозитории PSGallery.
Параметр Includes указывает DscResource, который является функцией, которую параметр может искать в репозитории.
Пример 8. Поиск модуля с фильтром
В этом примере для поиска модулей используется фильтр для поиска в репозитории.
Для репозитория на основе NuGet параметр Filter выполняет поиск аргумента по имени, описанию и тегам.
Find-Module -Filter AppDomain
Version Name Repository Description
------- ---- ---------- -----------
1.0.0.0 AppDomainConfig PSGallery Manipulate AppDomain configuration...
1.1.0 ClassExplorer PSGallery Quickly search the AppDomain for classes...
Командлет Find-Module
использует параметр Filter для поиска appDomain в репозитории.
Параметры
-AllowPrerelease
Включает в модули результатов, помеченные как предварительная версия.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-AllVersions
Указывает на включение всех версий модуля в результаты. Параметр AllVersions нельзя использовать с параметрами MinimumVersion, MaximumVersion или RequiredVersion .
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Command
Задает массив команд для поиска в модулях. Команда может быть функцией или рабочим процессом.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Credential
Указывает учетную запись пользователя, которая имеет права на установку модуля для указанного поставщика пакета или источника.
Type: | PSCredential |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-DscResource
Указывает имя или часть имени модулей, содержащих ресурсы DSC. В соответствии с соглашениями PowerShell выполняет поиск ИЛИ при указании нескольких аргументов.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Filter
Задает фильтр, основанный на синтаксисе поиска, относящемся к поставщику PackageManagement . Для модулей NuGet этот параметр эквивалентен поиску с помощью панели Поиск на веб-сайте коллекция PowerShell.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-IncludeDependencies
Указывает, что эта операция включает все модули, зависящие от модуля, указанного в параметре Name .
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Includes
Возвращает только те модули, которые включают определенные типы функций PowerShell. Например, может потребоваться найти только модули, включающие DSCResource. Ниже приведены допустимые значения для этого параметра.
- Командлет
- DscResource
- Функция
- RoleCapability
Type: | String[] |
Accepted values: | DscResource, Cmdlet, Function, RoleCapability |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-MaximumVersion
Указывает максимальную или последнюю версию модуля для включения в результаты поиска. MaximumVersion и RequiredVersion нельзя использовать в одной и той же команде.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-MinimumVersion
Указывает минимальную версию модуля для включения в результаты. MinimumVersion и RequiredVersion нельзя использовать в одной и той же команде.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Name
Указывает имена модулей для поиска в репозитории. Принимается разделенный запятыми список имен модулей. Принимаются подстановочные знаки.
Type: | String[] |
Position: | 0 |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Proxy
Указывает прокси-сервер для запроса, а не подключение напрямую к интернет-ресурсу.
Type: | Uri |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-ProxyCredential
Указывает учетную запись пользователя, имеющую разрешение на использование прокси-сервера, который задается параметром Proxy.
Type: | PSCredential |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Repository
Используйте параметр Repository , чтобы указать, в каком репозитории искать модуль. Используется при регистрации нескольких репозиториев. Принимает разделенный запятыми список репозиториев. Чтобы зарегистрировать репозиторий, используйте .Register-PSRepository
Чтобы отобразить зарегистрированные репозитории, используйте .Get-PSRepository
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-RequiredVersion
Указывает точный номер версии модуля для включения в результаты. RequiredVersion нельзя использовать в той же команде, что и MinimumVersion или MaximumVersion.
Type: | String |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-RoleCapability
Задает массив возможностей ролей.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Tag
Задает массив тегов. Примеры тегов: DesiredStateConfiguration, DSC, DSCResourceKit или PSModule.
Type: | String[] |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Входные данные
String[]
Выходные данные
PSRepositoryItemInfo
Find-Module
создает объекты PSRepositoryItemInfo , которые можно отправить в конвейер командлетам, таким как Install-Module
.
Примечания
Важно!
Начиная с апреля 2020 года коллекция PowerShell не поддерживает протокол TLS (Transport Layer Security) версий 1.0 и 1.1. Если вы не используете TLS 1.2 или более поздней версии, при попытке доступа к коллекции PowerShell возникнет ошибка. Чтобы проверить, используется ли TLS 1.2, выполните следующую команду:
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
Дополнительные сведения см. в объявлении в блоге, посвященном PowerShell.