Share via


about_PSResourceGet

Descripción breve

Describe cómo usar la versión 1.0.3 del módulo Microsoft.PowerShell.PSResourceGet .

Descripción larga

Microsoft.PowerShell.PSResourceGet es una versión actualizada del módulo PowerShellGet completamente escrito en C#.

Esta versión de PowerShellGet se centra en algunas áreas clave:

  • Simplificar la base de código, lo que facilita la mejora y corrección de errores
  • Quite la dependencia del módulo PackageManagement y use directamente la biblioteca NuGet .
  • Solucionar problemas de facilidad de uso de larga duración que serían cambios importantes de la versión 2
  • Mantener la compatibilidad con los scripts existentes escritos en la versión 2 a través de un módulo de compatibilidad independiente
  • Mejora del rendimiento de búsqueda e instalación

Cambios de diseño

Las versiones anteriores de PowerShellGet tenían comandos independientes para trabajar con módulos y scripts. En Microsoft.PowerShell.PSResourceGet, todos los paquetes del Galería de PowerShell se definen como objetos PSResource. Esto reduce el número de cmdlets de 26 en la versión 2.x a 18 en la versión 0.9.

En la tabla siguiente se muestran los cmdlets que están disponibles en PowerShellGet v3 y sus equivalentes v2.

Microsoft.PowerShell.PSResourceGet PowerShellGet v2
Find-PSResource Find-Command
Find-PSResource Find-DscResource
Find-PSResource Find-Module
Find-PSResource Find-Script
N/D Find-RoleCapability
Get-InstalledPSResource Get-InstalledModule
Get-InstalledPSResource Get-InstalledScript
Get-PSResourceRepository Get-PSRepository
Get-PSScriptFileInfo N/D
Import-PSGetRepository N/D
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

Búsqueda por intervalos de versiones de NuGet

Varios cmdlets Microsoft.PowerShell.PSResourceGet proporcionan un parámetro Version que permite especificar un intervalo de versiones para buscar. El parámetro Version usa la sintaxis de control de versiones de NuGet. Para obtener más información sobre los intervalos de versiones de NuGet, consulte Control de versiones de paquetes.

PowerShellGet admite todas las versiones inclusivas, excepto la mínima, que se muestra en la documentación del intervalo de versiones de NuGet. El uso 1.0.0.0 de como versión no produce las versiones 1.0.0.0 y posteriores (intervalo inclusivo mínimo). En su lugar, el valor se considera la versión necesaria. Para buscar un intervalo inclusivo mínimo, use [1.0.0.0, ] como intervalo de versiones.

Búsqueda por recursos necesarios

El Install-PSResource cmdlet tiene parámetros RequiredResource y RequiredResourceFile que se usan para buscar objetos PSResource que coincidan con criterios específicos. Puede especificar los criterios de búsqueda mediante una tabla hash o un objeto JSON. Para el parámetro RequiredResourceFile , la tabla hash se almacena en un .psd1 archivo y el objeto JSON se almacena en un .json archivo.

La tabla hash puede contener atributos para varios módulos. En el ejemplo siguiente se muestra la estructura de la especificación del módulo:

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

Este ejemplo contiene especificaciones para tres módulos. Como puede, los atributos del módulo son opcionales.

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

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

    TestModule99 = @{}
}

En el ejemplo siguiente se muestra la misma especificación en formato JSON.

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

Consulte también