Dotnet-Installationsskripts Verweis
name
dotnet-install.ps1
| dotnet-install.sh
: Skript für die Installation des .NET SDK und der Shared Runtime
Übersicht
Windows:
dotnet-install.ps1 [-Architecture <ARCHITECTURE>] [-AzureFeed]
[-Channel <CHANNEL>] [-DryRun] [-FeedCredential]
[-InstallDir <DIRECTORY>] [-JSonFile <JSONFILE>]
[-NoCdn] [-NoPath] [-ProxyAddress] [-ProxyBypassList <LIST_OF_URLS>]
[-ProxyUseDefaultCredentials] [-Quality <QUALITY>] [-Runtime <RUNTIME>]
[-SkipNonVersionedFiles] [-UncachedFeed] [-Verbose]
[-Version <VERSION>]
Get-Help ./dotnet-install.ps1
Linux/macOS:
dotnet-install.sh [--architecture <ARCHITECTURE>] [--azure-feed]
[--channel <CHANNEL>] [--dry-run] [--feed-credential]
[--install-dir <DIRECTORY>] [--jsonfile <JSONFILE>]
[--no-cdn] [--no-path] [--quality <QUALITY>]
[--runtime <RUNTIME>] [--runtime-id <RID>]
[--skip-non-versioned-files] [--uncached-feed] [--verbose]
[--version <VERSION>]
dotnet-install.sh --help
Das Bash-Skript liest auch PowerShell-Schalter, sodass Sie PowerShell-Schalter mit dem Skript auf Linux/macOS-Systemen verwenden können.
Beschreibung
Die dotnet-install
-Skripts führen eine Nicht-Administrator-Installation des .NET SDK durch, das die .NET-CLI und die Shared Runtime enthält. Es gibt zwei Skripts:
- Ein PowerShell-Skript, das unter Windows verwendet werden kann
- Ein Bash-Skript für Linux/macOS
Hinweis
.NET sammelt Telemetriedaten. Weitere Informationen über die Sammlung von Telemetriedaten sowie darüber, wie diese deaktiviert wird, finden Sie unter .NET-SDK-Telemetrie.
Zweck
Diese Skripts sind für die Verwendung in Continuous Integration-Szenarios (CI) konzipiert, in denen Folgendes zutrifft:
Das SDK muss ohne Benutzerinteraktion und ohne Administratorrechte installiert werden.
Die SDK-Installation muss nicht für mehrere CI-Ausführungen beibehalten werden.
Die typische Sequenz für Ereignisse lautet folgendermaßen:
- Die CI wird ausgelöst.
- Die CI installiert das SDK mithilfe eines dieser Skripts.
- Die CI schließt ihre Aufgaben ab und bereinigt temporäre Daten einschließlich der SDK-Installation.
Verwenden Sie die Installationsprogramme anstatt dieser Skripts, um eine Entwicklungsumgebung einzurichten oder um Apps auszuführen.
Empfohlene Version
Es wird empfohlen, die stabile Version der Skripts zu verwenden:
- Bash (Linux/macOS): https://dot.net/v1/dotnet-install.sh
- PowerShell (Windows): https://dot.net/v1/dotnet-install.ps1
Skriptverhalten
Beide Skripts weisen das gleiche Verhalten auf. Sie laden die ZIP-/Tarball-Datei vom CLI-Build-Ablagespeicherort herunter und installieren sie entweder am Standardspeicherort oder an einem in -InstallDir|--install-dir
angegebenen Speicherort.
In der Standardeinstellung laden die Installationsskripts das SDK herunter und installieren es. Wenn Sie nur die freigegebene Laufzeit abrufen möchten, geben Sie das -Runtime|--runtime
-Argument an.
In der Standardeinstellung fügt das Skript den Installationsort dem $PATH für die aktuelle Sitzung hinzu. Überschreiben Sie dieses Standardverhalten, indem sie das -NoPath|--no-path
-Argument angeben. Das Skript legt die Umgebungsvariable DOTNET_ROOT
nicht fest.
Bevor Sie das Skript ausführen, installieren Sie die erforderlichen Abhängigkeiten.
Installieren Sie eine bestimmte Version mithilfe des Arguments -Version|--version
. Die Version muss als dreiteilige Versionsnummer (z. B. 2.1.0
) angegeben werden. Wenn die Version nicht angegeben wird, installiert das Skript die latest
-Version.
Die Installationsskripts aktualisieren die Registrierung unter Windows nicht. Sie laden nur die gezippten Binärdateien herunter und kopieren sie in einen Ordner. Wenn Sie möchten, dass die Registrierungsschlüsselwerte aktualisiert werden, verwenden Sie die .NET-Installer.
Optionen
-Architecture|--architecture <ARCHITECTURE>
Architektur der zu installierenden .NET-Binärdateien. Mögliche Werte sind
<auto>
,amd64
,x64
,x86
,arm64
,arm
unds390x
. Der Standardwert ist<auto>
, was die derzeit ausgeführte Betriebssystemarchitektur darstellt.-AzureFeed|--azure-feed
Nur zur internen Verwendung. Ermöglicht die Verwendung eines anderen Speichers zum Herunterladen von SDK-Archiven. Dieser Parameter wird nur verwendet, wenn --no-cdn false ist. Der Standardwert ist
https://dotnetcli.azureedge.net/dotnet
.-Channel|--channel <CHANNEL>
Gibt den Quellkanal für die Installation an. Mögliche Werte sind:
STS
– das neueste Release für den Support für StandardlaufzeitenLTS
– die neueste Version des Long Term Support- Zweiteilige Version im A.B-Format, das eine bestimmte Version darstellt (z. B.
3.1
oder6.0
). - Dreiteilige Version im A.B.Cxx-Format, die ein bestimmtes SDK-Release darstellt (z. B. 6.0.1xx oder 6.0.2xx). Verfügbar seit Release 5.0.
Der
version
-Parameter überschreibt denchannel
-Parameter, wenn eine andere Version alslatest
verwendet wird.Der Standardwert ist
LTS
. Weitere Informationen zu .NET-Supportkanälen finden Sie auf der Seite .NET-Supportrichtlinie.-DryRun|--dry-run
Wenn festgelegt, führt das Skript die Installation nicht aus. Es zeigt stattdessen an, welche Befehlszeile verwendet werden soll, um die derzeit erforderliche Version der .NET-CLI konsistent zu installieren. Wenn Sie z.B. Version
latest
angeben, wird eine Verbindung mit der bestimmten Version angezeigt, damit dieser Befehl deterministisch in einem Buildskript verwendet werden kann. Außerdem wird der Speicherort der Binärdatei angezeigt, wenn Sie sie selbst installieren oder herunterladen möchten.-FeedCredential|--feed-credential
Wird als Abfragezeichenfolge zum Anfügen an den Azure-Feed verwendet. Ermöglicht das Ändern der URL, um nicht öffentliche Blob Storage-Konten verwenden zu können.
--help
Druckt Hilfe für das Skript aus. Gilt nur für das Bash-Skript. Verwenden Sie
Get-Help ./dotnet-install.ps1
für PowerShell.-InstallDir|--install-dir <DIRECTORY>
Gibt den Installationspfad an. Das Verzeichnis wird erstellt, wenn es nicht vorhanden ist. Der Standardwert lautet %LocalAppData%\Microsoft\dotnet unter Windows und $HOME/.dotnet unter Linux/macOS. Binärdateien werden direkt im Verzeichnis platziert.
-JSonFile|--jsonfile <JSONFILE>
Gibt einen Pfad zu einer global.json-Datei an, die zur Bestimmung der SDK-Version verwendet wird. Die Datei global.json muss einen Wert für
sdk:version
haben.-NoCdn|--no-cdn
Deaktiviert das Herunterladen aus dem Azure Content Delivery Network (CDN) und verwendet den nicht zwischengespeicherten Feed direkt.
-NoPath|--no-path
Wenn festgelegt, wird der Installationsordner nicht in den Pfad für die aktuelle Sitzung exportiert. Standardmäßig ändert das Skript den Pfad (PATH), wodurch die .NET-CLI sofort nach der Installation zur Verfügung steht.
-ProxyAddress
Wenn festgelegt, verwendet das Installationsprogramm den Proxy bei der Durchführung von Webanfragen. (Nur gültig für Windows)
-ProxyBypassList <LIST_OF_URLS>
Wenn diese Einstellung mit
ProxyAddress
festgelegt ist, wird eine Liste mit durch Trennzeichen getrennten URLs bereitstellt, die den Proxy umgehen. (Nur gültig für Windows)-ProxyUseDefaultCredentials
Wenn festgelegt, verwendet der Installer bei Verwendung der Proxyadresse die Anmeldeinformationen des aktuellen Benutzers. (Nur gültig für Windows)
-Quality|--quality <QUALITY>
Lädt den neuesten Build der angegebenen Qualität im Kanal herunter. Mögliche Werte sind:
daily
,signed
,validated
,preview
,GA
. Funktioniert nur in Kombination mitchannel
. Gilt nicht für STS- und LTS-Kanäle und wird ignoriert, wenn einer dieser Kanäle verwendet wird.Verwenden Sie für eine SDK-Installation
channel
imA.B
- oderA.B.Cxx
-Format. Verwenden Sie für eine Laufzeitinstallationchannel
imA.B
-Format.Verwenden Sie weder Parameter noch
version
quality
Parameter. Wennquality
angegeben wird, bestimmt das Skript die richtige Version selbst.Verfügbar seit Release 5.0.
-Runtime|--runtime <RUNTIME>
Es wird nur die freigegebene Runtime installiert und nicht das gesamte SDK. Mögliche Werte sind:
dotnet
– die freigegebene Runtime vonMicrosoft.NETCore.App
.aspnetcore
– die freigegebene Runtime vonMicrosoft.AspNetCore.App
.windowsdesktop
– die freigegebene Runtime vonMicrosoft.WindowsDesktop.App
.
--os <OPERATING_SYSTEM>
Hiermit wird das Betriebssystem angegeben, für das die Tools installiert werden. Mögliche Werte sind:
osx
,linux
,linux-musl
,freebsd
.Der Parameter ist optional und sollte nur verwendet werden, wenn er für die Außerkraftsetzung des Betriebssystems erforderlich ist, das vom Skript erkannt wurde.
-SharedRuntime|--shared-runtime
Hinweis
Dieser Parameter ist veraltet und wird in einer zukünftigen Version des Skripts möglicherweise entfernt. Die empfohlene Alternative ist die
-Runtime|--runtime
-Option.Es werden nur die freigegebenen Runtimebestandteile installiert und nicht das gesamte SDK. Diese Option entspricht der Angabe von
-Runtime|--runtime dotnet
.-SkipNonVersionedFiles|--skip-non-versioned-files
Die Installation nicht versionierte Dateien, wie dotnet.exe, wird übersprungen, falls diese bereits vorhanden sind.
-UncachedFeed|--uncached-feed
Nur zur internen Verwendung. Ermöglicht die Verwendung eines anderen Speichers zum Herunterladen von SDK-Archiven. Dieser Parameter wird nur verwendet, wenn --no-cdn true ist.
-Verbose|--verbose
Es werden Diagnoseinformationen angezeigt.
-Version|--version <VERSION>
Stellt eine bestimmte Buildversion dar. Mögliche Werte sind:
latest
– der neueste Build auf dem Kanal (mit der-Channel
-Option verwendet).- Dreiteilige Version im X.Y.Z-Format, die eine bestimmte Buildversion darstellt; sie hat Vorrang vor der
-Channel
-Option. Beispiel:2.0.0-preview2-006120
.
Wenn nichts angegeben ist, wird für
-Version
standardmäßiglatest
verwendet.
Beispiele
Installieren Sie die neueste langfristig unterstützte (Long-Term Supported, LTS) Version am Standardspeicherort:
Windows:
./dotnet-install.ps1 -Channel LTS
Mac OS/Linux:
./dotnet-install.sh --channel LTS
Installieren Sie die neueste Vorschauversion des SDK 6.0.1xx am angegebenen Speicherort:
Windows:
./dotnet-install.ps1 -Channel 6.0.1xx -Quality preview -InstallDir C:\cli
Mac OS/Linux:
./dotnet-install.sh --channel 6.0.1xx --quality preview --install-dir ~/cli
Installieren Sie die Version 6.0.0 der freigegebenen Runtime:
Windows:
./dotnet-install.ps1 -Runtime dotnet -Version 6.0.0
Mac OS/Linux:
./dotnet-install.sh --runtime dotnet --version 6.0.0
Rufen Sie das Skript ab, und installieren Sie die Version 6.0.2 hinter einem Unternehmensproxy (nur Windows):
Invoke-WebRequest 'https://dot.net/v1/dotnet-install.ps1' -Proxy $env:HTTP_PROXY -ProxyUseDefaultCredentials -OutFile 'dotnet-install.ps1'; ./dotnet-install.ps1 -InstallDir '~/.dotnet' -Version '6.0.2' -Runtime 'dotnet' -ProxyAddress $env:HTTP_PROXY -ProxyUseDefaultCredentials;
Rufen Sie das Skript ab, und installieren Sie die einzeiligen Beispiele für die .NET-CLI:
Windows:
# Run a separate PowerShell process because the script calls exit, so it will end the current PowerShell session. &powershell -NoProfile -ExecutionPolicy unrestricted -Command "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; &([scriptblock]::Create((Invoke-WebRequest -UseBasicParsing 'https://dot.net/v1/dotnet-install.ps1'))) <additional install-script args>"
Mac OS/Linux:
curl -sSL https://dot.net/v1/dotnet-install.sh | bash /dev/stdin <additional install-script args>
Festlegen von Umgebungsvariablen
Durch die manuelle Installation von .NET werden die Umgebungsvariablen nicht systemweit hinzugefügt, und in der Regel funktioniert sie nur für die Sitzung, in der .NET installiert wurde. Es gibt zwei Umgebungsvariablen, die Sie für Ihr Betriebssystem festlegen sollten:
DOTNET_ROOT
Diese Variable ist auf den Ordner festgelegt, in dem .NET installiert wurde, z
$HOME/.dotnet
. B. für Linux und macOS, und$HOME\.dotnet
in PowerShell für Windows.PATH
Diese Variable sollte sowohl den
DOTNET_ROOT
Ordner als auch den .dotnet/tools-Ordner des Benutzers enthalten. Im Allgemeinen ist$HOME/.dotnet/tools
dies unter Linux und macOS und$HOME\.dotnet\tools
in PowerShell unter Windows.
Tipp
Verwenden Sie für Linux und macOS den echo
Befehl, um die Variablen in Ihrem Shellprofil festzulegen, z . B. bashrc:
echo 'export DOTNET_ROOT=$HOME/.dotnet' >> ~/.bashrc
echo 'export PATH=$PATH:$DOTNET_ROOT:$DOTNET_ROOT/tools' >> ~/.bashrc