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


about_PSResourceGet

Краткое описание

Описание использования версии 1.1.0 модуля Microsoft.PowerShell.PSResourceGet.

Длинное описание

Microsoft.PowerShell.PSResourceGet является обновленной версией модуля PowerShellGet полностью написанной на C#.

Эта версия PowerShellGet посвящена нескольким ключевым областям:

  • Упрощение базы кода, что упрощает улучшение и исправление ошибок
  • Удалите зависимость от модуля PackageManagement и используйте библиотеку NuGet напрямую.
  • Устранение долгосрочных проблем с удобством использования, которые будут критическими изменениями из версии 2
  • Обеспечение совместимости для существующих скриптов, написанных в версии 2 с помощью отдельного модуля совместимости
  • Повышение производительности поиска и установки

Изменения в проектировании

Предыдущие версии PowerShellGet имели отдельные команды для работы с модулями и скриптами. В Microsoft.PowerShell.PSResourceGetвсе пакеты в коллекции PowerShell определяются как объекты PSResource.

В следующей таблице показаны командлеты, доступные в PowerShellGet версии 3 и их эквиваленты версии 2.

Microsoft.PowerShell.PSResourceGet PowerShellGet версии 2
Compress-PSResource n/a
Find-PSResource Find-Command
Find-PSResource Find-DscResource
Find-PSResource Find-Module
Find-PSResource Find-Script
n/a Find-RoleCapability
Get-InstalledPSResource Get-InstalledModule
Get-InstalledPSResource Get-InstalledScript
Get-PSResourceRepository Get-PSRepository
Get-PSScriptFileInfo n/a
Import-PSGetRepository n/a
Install-PSResource Install-Module
Install-PSResource Install-Script
New-PSScriptFileInfo New-ScriptFileInfo
Publish-PSResource Publish-Module
Publish-PSResource Publish-Script
Register-PSResourceRepository Register-PSRepository
Save-PSResource Save-Module
Save-PSResource Save-Script
Set-PSResourceRepository Set-PSRepository
Test-PSScriptFileInfo Test-ScriptFileInfo
Uninstall-PSResource Uninstall-Module
Uninstall-PSResource Uninstall-Script
Unregister-PSResourceRepository Unregister-PSRepository
Update-PSModuleManifest Update-ModuleManifest
Update-PSResource Update-Module
Update-PSResource Update-Script
Update-PSScriptFileInfo Update-ScriptFileInfo

Поиск по диапазонам версий NuGet

Несколько командлетов Microsoft.PowerShell.PSResourceGet предоставляют параметр версии, позволяющий указать диапазон версий для поиска. Параметр версии использует синтаксис управления версиями NuGet. Дополнительные сведения о диапазонах версий NuGet см. в управления версиями пакетов.

PowerShellGet поддерживает все, кроме минимальной инклюзивной версии , перечисленных в документации по диапазону версий NuGet. Использование 1.0.0.0, так как версия не дает версий 1.0.0.0 и выше (минимальный инклюзивный диапазон). Вместо этого значение считается обязательной версией. Чтобы найти минимальный диапазон включительно, используйте [1.0.0.0, ] в качестве диапазона версий.

Поиск по необходимым ресурсам

Командлет Install-PSResource имеет RequiredResource и параметры RequiredResourceFile, используемые для поиска объектов PSResource, соответствующих определенным критериям. Критерии поиска можно указать с помощью хэш-файла или объекта JSON. Для параметра RequiredResourceFile хэш-файл хранится в файле .psd1, а объект JSON хранится в файле .json.

Хэш-файл может содержать атрибуты для нескольких модулей. В следующем примере показана структура спецификации модуля:

@{
    <modulename> = @{
        version = '<version-spcification>'
        repository = '<reponame>'
        prerelease = '<boolean>'
    }
}

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

 @{
    TestModule = @{
        version = '[0.0.1,1.3.0]'
        repository = 'PSGallery'
    }

    TestModulePrerelease = @{
        version = '[0.0.0,0.0.5]'
        repository = 'PSGallery'
        prerelease = $true
    }

    TestModule99 = @{}
}

В следующем примере показана та же спецификация в формате JSON.

{
  "TestModule": {
    "version": "[0.0.1,1.3.0)",
    "repository": "PSGallery"
  },
  "TestModulePrerelease": {
    "version": "[0.0.0,0.0.5]",
    "repository": "PSGallery",
    "prerelease": "true"
  },
  "TestModule99": {}
}

См. также