Freigeben über


Manuelles Paketdownload

Der PowerShell-Katalog unterstützt das direkte Herunterladen eines Pakets von der Website, ohne die PowerShellGet-Cmdlets zu verwenden. Sie können jedes Paket als NuGet-Paketdatei (.nupkg) herunterladen, die Sie dann in ein internes Repository kopieren können.

Anmerkung

Der manuelle Paketdownload ist nicht als Ersatz für das Cmdlet Install-Module vorgesehen. Durch das Herunterladen des Pakets wird das Modul oder Skript nicht installiert. Abhängigkeiten sind nicht im heruntergeladenen NuGet-Paket enthalten. Die folgenden Anweisungen werden nur zu Referenzzwecken bereitgestellt.

Verwenden des manuellen Downloads zum Abrufen eines Pakets

Jede Seite verfügt über einen Link zum manuellen Download, wie hier gezeigt:

Seite

Wenn Sie manuell herunterladen möchten, klicken Sie auf Die unformatierte nupkg-Dateiherunterladen. Eine Kopie des Pakets wird in den Downloadordner für Ihren Browser mit dem Namen <name>.<version>.nupkgkopiert.

Ein NuGet-Paket ist ein ZIP-Archiv mit zusätzlichen Dateien, die Informationen zum Inhalt des Pakets enthalten. Einige Browser, z. B. Internet Explorer, ersetzen die dateierweiterung .nupkg automatisch durch .zip. Um das Paket zu erweitern, benennen Sie die .nupkg Datei bei Bedarf in .zipum, und extrahieren Sie dann den Inhalt mithilfe von Expand-Archive oder einem anderen ZIP-Dateitool in einen lokalen Ordner.

Eine NuGet-Paketdatei enthält die folgenden NuGet-spezifischen Elemente, die nicht Teil des ursprünglich verpackten Codes sind:

  • Ein Ordner mit dem Namen _rels enthält eine .rels Datei, die die Abhängigkeiten auflistet.
  • Ein Ordner mit dem Namen package – enthält die NuGet-spezifischen Daten.
  • Eine Datei mit dem Namen [Content_Types].xml – beschreibt, wie Erweiterungen wie PowerShellGet mit NuGet funktionieren
  • Eine Datei mit dem Namen <name>.nuspec – enthält den Großteil der Metadaten.

Installieren von PowerShell-Modulen aus einem NuGet-Paket

Anmerkung

Diese Anweisungen DO NOT dasselbe Ergebnis wie das Ausführen von Install-Modulegeben. Diese Anweisungen erfüllen die Mindestanforderungen. Sie sind nicht als Ersatz für Install-Modulevorgesehen. Einige von Install-Module ausgeführte Schritte sind nicht enthalten.

Der einfachste Ansatz besteht darin, die NuGet-spezifischen Elemente aus dem Ordner zu entfernen. Wenn Sie die Elemente entfernen, bleibt der vom Paketautor erstellte PowerShell-Code übrig. Eine Liste der NuGet-spezifischen Elemente finden Sie unter Verwenden des manuellen Downloads zum Abrufen eines Pakets.

Die Schritte sind wie folgt:

  1. Heben Sie die Blockierung des im Internet heruntergeladenen NuGet-Pakets (.nupkg) auf, z. B. mithilfe Unblock-File -Path C:\Downloads\module.nupkg Cmdlets.
  2. Extrahieren Sie den Inhalt des NuGet-Pakets in einen lokalen Ordner.
  3. Löschen Sie die NuGet-spezifischen Elemente aus dem Ordner.
  4. Benennen Sie den Ordner um. Der Standardordnername ist in der Regel <name>.<version>. Die Version kann -prerelease enthalten, wenn das Modul als Vorabversion markiert ist. Benennen Sie den Ordner in nur den Modulnamen um. Beispielsweise wird azurerm.storage.5.0.4-previewazurerm.storage.
  5. Kopieren Sie den Ordner in einen der Ordner im $env:PSModulePath value. $env:PSModulePath ist ein durch Semikolons getrennter Satz von Pfaden, in denen PowerShell nach Modulen suchen soll.

Wichtig

Der manuelle Download enthält keine Abhängigkeiten, die vom Modul benötigt werden. Wenn das Paket Abhängigkeiten aufweist, müssen sie auf dem System installiert werden, damit dieses Modul ordnungsgemäß funktioniert. Der PowerShell-Katalog zeigt alle Abhängigkeiten an, die für das Paket erforderlich sind.

Installieren von PowerShell-Skripts aus einem NuGet-Paket

Anmerkung

Diese Anweisungen DO NOT dasselbe Ergebnis wie das Ausführen von Install-Scriptgeben. Diese Anweisungen erfüllen die Mindestanforderungen. Sie sind nicht als Ersatz für Install-Scriptvorgesehen.

Der einfachste Ansatz besteht darin, das NuGet-Paket zu extrahieren und dann das Skript direkt zu verwenden.

Die Schritte sind wie folgt:

  1. Heben Sie die Blockierung des im Internet heruntergeladenen NuGet-Pakets (.nupkg) auf, z. B. mithilfe Unblock-File -Path C:\Downloads\package.nupkg Cmdlets.
  2. Extrahieren Sie den Inhalt des NuGet-Pakets.
  3. Die .PS1 Datei im Ordner kann direkt an diesem Speicherort verwendet werden.
  4. Sie können die NuGet-spezifischen Elemente im Ordner löschen.

Eine Liste der NuGet-spezifischen Elemente finden Sie unter Verwenden des manuellen Downloads zum Abrufen eines Pakets.

Wichtig

Der manuelle Download enthält keine Abhängigkeiten, die vom Modul benötigt werden. Wenn das Paket Abhängigkeiten aufweist, müssen sie auf dem System installiert werden, damit dieses Modul ordnungsgemäß funktioniert. Der PowerShell-Katalog zeigt alle Abhängigkeiten an, die für das Paket erforderlich sind.