Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Breve descrizione
Descrive come utilizzare la versione 1.2.0 del modulo Microsoft.PowerShell.PSResourceGet .
Descrizione lunga
Microsoft.PowerShell.PSResourceGet è una versione aggiornata del modulo PowerShellGet completamente scritta in C# e offre i seguenti vantaggi rispetto alle versioni precedenti di PowerShellGet:
- Semplifica la base di codice rendendo più facile migliorare e correggere bug
- Elimina la dipendenza dal modulo PackageManagement e utilizza direttamente le API NuGet
- Affronta problemi di usabilità di lunga data che sarebbero cambiamenti compromettenti se venissero fatti in PowerShellGet v2
- Migliora le prestazioni di ricerca e installazione
La prima volta che usi Microsoft.PowerShell.PSResourceGet, il modulo registra la PowerShell Gallery come repository PSResource. Di default, il repository PSGallery è registrato con una priorità di 50 ed è contrassegnato come non affidabile. Usa il seguente comando per fidarti del repository PSGallery:
Set-PSResourceRepository -Name PSGallery -Trusted -PassThru
Modifiche al design
Le versioni precedenti di PowerShellGet avevano comandi separati da usare con moduli e script. In Microsoft.PowerShell.PSResourceGet, tutti i pacchetti in PowerShell Gallery vengono definiti come oggetti PSResource.
La tabella seguente mostra i cmdlet disponibili in Microsoft.PowerShell.PSResourceGet e nei loro equivalenti PowerShellGet v2.
| Microsoft.PowerShell.PSResourceGet | PowerShellGet v2 |
|---|---|
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 |
Reset-PSResourceRepository |
n/a |
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 |
Ricerca in base agli intervalli di versioni di NuGet
Diversi cmdlet Microsoft.PowerShell.PSResourceGet forniscono un parametro Version che consente di specificare un intervallo di versioni da cercare. Il parametro version
PowerShellGet supporta tutte le versioni incluse elencate nella documentazione dell'intervallo di versioni di NuGet. L'uso di 1.0.0.0 perché la versione non restituisce versioni 1.0.0.0 e successive (intervallo inclusivo minimo). Il valore viene invece considerato la versione richiesta. Per cercare un intervallo inclusivo minimo, usare [1.0.0.0, ] come intervallo di versioni.
Ricerca in base alle risorse necessarie
Il cmdlet Install-PSResource include RequiredResource e parametri RequiredResourceFile usati per trovare oggetti PSResource corrispondenti a criteri specifici. È possibile specificare i criteri di ricerca usando una tabella hash o un oggetto JSON. Per il parametro RequiredResourceFile, la tabella hash viene archiviata in un file .psd1 e l'oggetto JSON viene archiviato in un file .json.
La tabella hash può contenere attributi per più moduli. L'esempio seguente illustra la struttura della specifica del modulo:
@{
<modulename> = @{
version = '<version-spcification>'
repository = '<reponame>'
prerelease = '<boolean>'
}
}
Questo esempio contiene le specifiche per tre moduli. Come è possibile, gli attributi del modulo sono facoltativi.
@{
TestModule = @{
version = '[0.0.1,1.3.0]'
repository = 'PSGallery'
}
TestModulePrerelease = @{
version = '[0.0.0,0.0.5]'
repository = 'PSGallery'
prerelease = $true
}
TestModule99 = @{}
}
L'esempio seguente mostra la stessa specifica in 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": {}
}