Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Kurzbeschreibung
Beschreibt die Verwendung von Version 1.1.1 des Microsoft.PowerShell.PSResourceGet-Moduls .
Lange Beschreibung
Microsoft.PowerShell.PSResourceGet ist eine aktualisierte Version des PowerShellGet Moduls, das vollständig in C# geschrieben wurde.
Diese Version von PowerShellGet konzentriert sich auf einige wichtige Bereiche:
- Vereinfachen sie die Codebasis, sodass Fehler einfacher verbessert und behoben werden können
- Entfernen Sie die Abhängigkeit vom PackageManagement Modul, und verwenden Sie die NuGet--Bibliothek direkt.
- Beheben von langfristigen Problemen bei der Benutzerfreundlichkeit, die Änderungen von v2 unterbrechen würden
- Beibehalten der Kompatibilität für vorhandene Skripts, die mit v2 über ein separates Kompatibilitätsmodul erwartet werden
- Verbessern der Such- und Installationsleistung
Entwurfsänderungen
Frühere Versionen von PowerShellGet hatten separate Befehle, um mit Modulen und Skripts zu arbeiten. In Microsoft.PowerShell.PSResourceGet-werden alle Pakete im PowerShell-Katalog als PSResource--Objekte definiert.
In der folgenden Tabelle sind die Cmdlets aufgeführt, die in PowerShellGet- v3 und ihren v2-Entsprechungen verfügbar sind.
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 |
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 |
Suchen nach NuGet-Versionsbereichen
Mehrere Microsoft.PowerShell.PSResourceGet Cmdlets stellen einen Version Parameter bereit, mit dem Sie einen Bereich von Versionen angeben können, nach denen gesucht werden soll. Der parameter Version verwendet die NuGet-Versionsverwaltungssyntax. Weitere Informationen zu NuGet-Versionsbereichen finden Sie unter Paketversionsverwaltung.
PowerShellGet unterstützt alle mindestens inklusive Version in der NuGet-Versionsbereichsdokumentation aufgeführt. Die Verwendung von 1.0.0.0
, da die Version die Versionen 1.0.0.0.0 und höher (minimaler inklusiver Bereich) nicht liefert. Stattdessen wird der Wert als erforderliche Version betrachtet. Verwenden Sie [1.0.0.0, ]
als Versionsbereich, um nach einem minimal inklusiven Bereich zu suchen.
Suchen nach erforderlichen Ressourcen
Das cmdlet Install-PSResource
verfügt über RequiredResource und RequiredResourceFile Parameter, die verwendet werden, um PSResource Objekte zu finden, die bestimmten Kriterien entsprechen. Sie können die Suchkriterien mithilfe einer Hashtable oder eines JSON-Objekts angeben. Für den parameter RequiredResourceFile wird die Hashtable in einer .psd1
Datei gespeichert, und das JSON-Objekt wird in einer .json
Datei gespeichert.
Die Hashtabelle kann Attribute für mehrere Module enthalten. Das folgende Beispiel zeigt die Struktur der Modulspezifikation:
@{
<modulename> = @{
version = '<version-spcification>'
repository = '<reponame>'
prerelease = '<boolean>'
}
}
Dieses Beispiel enthält Spezifikationen für drei Module. Wie möglich sind die Modulattribute optional.
@{
TestModule = @{
version = '[0.0.1,1.3.0]'
repository = 'PSGallery'
}
TestModulePrerelease = @{
version = '[0.0.0,0.0.5]'
repository = 'PSGallery'
prerelease = $true
}
TestModule99 = @{}
}
Das nächste Beispiel zeigt die gleiche Spezifikation im JSON-Format.
{
"TestModule": {
"version": "[0.0.1,1.3.0)",
"repository": "PSGallery"
},
"TestModulePrerelease": {
"version": "[0.0.0,0.0.5]",
"repository": "PSGallery",
"prerelease": "true"
},
"TestModule99": {}
}