Freigeben über


about_PSResourceGet

Kurzbeschreibung

Beschreibt die Verwendung von Version 1.1.0 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": {}
}

Siehe auch