dotnet-Befehl
Dieser Artikel gilt für: ✔️ .NET Core 3.1 SDK und höher
Name
dotnet
: Der generische Treiber für die .NET-CLI
Übersicht
So erhalten Sie Informationen über die verfügbaren Befehle und die Umgebung
dotnet [--version] [--info] [--list-runtimes] [--list-sdks]
dotnet -h|--help
So führen Sie einen Befehl aus (erfordert eine SDK-Installation)
dotnet <COMMAND> [-d|--diagnostics] [-h|--help] [--verbosity <LEVEL>]
[command-options] [arguments]
So führen Sie eine Anwendung aus
dotnet [--additionalprobingpath <PATH>] [--additional-deps <PATH>]
[--fx-version <VERSION>] [--roll-forward <SETTING>]
<PATH_TO_APPLICATION> [arguments]
dotnet exec [--additionalprobingpath] [--additional-deps <PATH>]
[--depsfile <PATH>]
[--fx-version <VERSION>] [--roll-forward <SETTING>]
[--runtimeconfig <PATH>]
<PATH_TO_APPLICATION> [arguments]
Beschreibung
Der Befehl dotnet
hat zwei Funktionen:
Er stellt Befehle für die Arbeit mit .NET-Projekten bereit.
Beispielsweise erstellt
dotnet build
ein Projekt. Jeder Befehl definiert seine eigenen Optionen und Argumente. Alle Befehle unterstützen die Option--help
zum Ausdrucken einer kurzen Dokumentation über die Verwendung des Befehls.Er führt .NET-Anwendungen aus.
Sie geben den Pfad zu einer
.dll
-Datei einer Anwendung zur Ausführung der Anwendung an. Das Ausführen der Anwendung bedeutet, den Einstiegspunkt zu finden und auszuführen. Im Falle von Konsolen-Apps ist dies dieMain
-Methode. Beispiel:dotnet myapp.dll
führt die Anwendungmyapp
aus. Weitere Informationen über Bereitstellungsoptionen finden Sie unter .NET-Anwendungsbereitstellung.
Optionen
Es stehen verschiedene Optionen zur Verfügung für:
- Anzeigen von Informationen zur Umgebung.
- Ausführen eines Befehls.
- Ausführen einer Anwendung.
Optionen zum Anzeigen von Umgebungsinformationen und verfügbaren Befehlen
Die folgenden Optionen sind verfügbar, wenn dotnet
sie selbst verwendet werden, ohne einen Befehl oder eine Anwendung anzugeben, die ausgeführt werden soll. Zum Beispiel: dotnet --info
oder dotnet --version
. Sie drucken Informationen über die Umgebung aus.
--info
Gibt ausführliche Informationen über eine .NET-Installation und die Computerumgebung aus, z. B. das aktuelle Betriebssystem und den Commit-SHA für die .NET-Version
--version
Gibt die Version des .NET SDK aus, die von dotnet
Befehlen verwendet wird, die von einer global.json-Datei betroffen sein kann. Nur verfügbar, wenn das SDK installiert ist.
--list-runtimes
Gibt eine Liste der installierten .NET-Runtimes aus. Eine x86-Version des SDK listet nur x86-Runtimes auf, und eine x64-Version des SDK listet nur x64-Runtimes auf.
--list-sdks
Gibt eine Liste der installierten .NET SDKs aus
-?|-h|--help
Druckt eine Liste der verfügbaren Befehle aus.
Optionen zum Ausführen eines Befehls
Die folgenden Optionen gelten für dotnet
mit einem Befehl. Zum Beispiel: dotnet build --help
oder dotnet build --verbosity diagnostic
.
-d|--diagnostics
Ermöglicht die diagnostische Ausgabe.
-v|--verbosity <LEVEL>
Legt den Ausführlichkeitsgrad für den Befehl fest. Zulässige Werte sind
q[uiet]
,m[inimal]
,n[ormal]
,d[etailed]
unddiag[nostic]
. Nicht in jedem Befehl unterstützt. Auf der Seite der einzelnen Befehle finden Sie heraus, ob diese Option verfügbar ist.-?|-h|--help
Gibt die Dokumentation für einen bestimmten Befehl aus. Zeigt beispielsweise
dotnet build --help
Hilfe für den Befehl anbuild
.command options
Jeder Befehl definiert Optionen, die für diesen Befehl spezifisch sind. Eine Liste der verfügbaren Optionen finden Sie auf einer speziellen Befehlsseite.
Optionen zum Ausführen einer Anwendung
Die folgenden Optionen sind verfügbar, wenn dotnet
eine Anwendung ausführt. Beispielsweise dotnet --roll-forward Major myapp.dll
.
--additionalprobingpath <PATH>
Pfad, der die Suchrichtlinie und die zu suchenden Assemblys enthält. Wiederholen Sie die Option, um mehrere Pfade anzugeben.
--additional-deps <PATH>
Pfad zu einer zusätzlichen .deps.json-Datei. Eine deps.json-Datei enthält eine Liste mit Abhängigkeiten, Kompilierungsabhängigkeiten und Versionsinformationen, die verwendet werden, um Assemblykonflikte zu bearbeiten. Weitere Informationen finden Sie auf GitHub unter Laufzeitkonfigurationsdateien.
--roll-forward <SETTING>
**Steuert, wie der Rollforward auf die App angewendet wird.
SETTING
kann einer der folgenden Werte sein. Wenn nichts anderes angegeben wird, wird als StandardMinor
verwendet.LatestPatch
: Rollforward zur höchsten Patchversion. Dies deaktiviert ein Rollforward zur Nebenversion.Minor
: Rollforward zur niedrigsten höheren Nebenversion, wenn die angeforderte Nebenversion nicht vorhanden ist. Wenn die angeforderte Nebenversion vorhanden ist, wird die LatestPatch-Richtlinie verwendet.Major
: Rollforward zur niedrigsten höheren Hauptversion – und niedrigsten Nebenversion, wenn die angeforderte Hauptversion nicht vorhanden ist. Wenn die angeforderte Hauptversion vorhanden ist, wird die Minor-Richtlinie verwendet.LatestMinor
: Rollforward zur höchsten Nebenversion – auch dann, wenn die angeforderte Nebenversion vorhanden ist. Für Komponentenhostingszenarien vorgesehen.LatestMajor
: Rollforward zur höchsten Hauptversion und höchsten Nebenversion – auch dann, wenn die angeforderte Hauptversion vorhanden ist. Für Komponentenhostingszenarien vorgesehen.Disable
: Kein Rollforward. Nur Binden an angegebene Version. Diese Richtlinie wird nicht zur allgemeinen Verwendung empfohlen, da sie die Möglichkeit eines Rollforwards zu den neuesten Patches ausschließt. Dieser Wert wird nur zu Testzwecken empfohlen.
Mit Ausnahme von
Disable
wird für alle Einstellungen die höchste verfügbare Patchversion verwendet.Das Rollforwardverhalten kann auch in einer Projektdateieigenschaft, einer Runtime-Konfigurationsdateieigenschaft und einer Umgebungsvariablen konfiguriert werden. Weitere Informationen finden Sie unter Runtimerollforward der Hauptversion.
--fx-version <VERSION>
Version der .NET-Runtime, die zum Ausführen der Anwendung verwendet werden soll
Diese Option überschreibt die Version des ersten Frameworkverweises in der
.runtimeconfig.json
-Datei der Anwendung. Dies bedeutet, dass sie nur dann wie erwartet funktioniert, wenn nur ein Frameworkverweis vorliegt. Wenn die Anwendung über mehrere Frameworkverweise verfügt, kann die Verwendung dieser Option zu Fehlern führen.
Optionen zum Ausführen einer Anwendung mit dem exec
Befehl
Die folgenden Optionen sind nur verfügbar, wenn dotnet
eine Anwendung mit dem exec
Befehl ausgeführt wird. Beispiel: dotnet exec --runtimeconfig myapp.runtimeconfig.json myapp.dll
.
--depsfile <PATH>
Pfad zu einer deps.json-Datei. Eine Datei mit Namen deps.json ist eine Konfigurationsdatei, die Informationen zu Abhängigkeiten enthält, die zum Ausführen der Anwendung erforderlich sind. Diese Datei wird vom .NET SDK generiert.
--runtimeconfig <PATH>
Der Pfad zu einer runtimeconfig.json-Datei. Eine Runtimeconfig.json-Datei enthält Laufzeiteinstellungen und heißt in der Regel <applicationname.runtimeconfig.json>. Weitere Informationen finden Sie unter Konfigurationseinstellungen für die .NET-Runtime.
dotnet-Befehle
Allgemein
Befehl | Funktion |
---|---|
dotnet build | Erstellt eine .NET-Anwendung |
dotnet build-server | Interagiert mit Servern, die von einem Build gestartet wurden. |
dotnet clean | Bereinigen von Buildausgaben. |
dotnet exec | Führt eine .NET-Anwendung aus. |
dotnet help | Zeigt eine ausführlichere Onlinedokumentation für den Befehl. |
dotnet migrate | Migriert ein gültiges Preview 2-Projekt in ein .NET Core SDK 1.0-Projekt. |
dotnet msbuild | Ermöglicht den Zugriff auf die MSBuild-Befehlszeile |
dotnet new | Initialisiert ein C#- oder F#-Projekt für eine bestimmte Vorlage. |
dotnet pack | Erstellt ein NuGet-Paket aus Ihrem Code. |
dotnet publish | Veröffentlicht eine .NET Framework-abhängige oder eigenständige Anwendung. |
dotnet restore | Stellt die Abhängigkeiten für eine bestimmte Anwendung wieder her. |
dotnet run | Führt die Anwendung aus der Quelle aus. |
dotnet sdk check | Zeigt den aktuellen Status der installierten SDK- und Runtimeversionen an. |
dotnet sln | Optionen zum Hinzufügen, Entfernen und Listen von Projekten in einer Projektmappendatei. |
dotnet store | Speichert Assemblys im Laufzeitpaketspeicher. |
dotnet test | Führt Tests mit einem Test Runner aus. |
Projektverweise
Befehl | Funktion |
---|---|
dotnet add reference | Fügt einen Projektverweis hinzu. |
dotnet list reference | Listet Projektverweise auf. |
dotnet remove reference | Entfernt einen Projektverweis. |
NuGet-Pakete
Befehl | Funktion |
---|---|
dotnet add package | Fügt ein NuGet-Paket hinzu. |
dotnet remove package | Entfernt ein NuGet-Paket. |
NuGet-Befehle
Befehl | Funktion |
---|---|
dotnet nuget delete | Löscht ein Paket vom Server oder hebt dessen Auflistung auf. |
dotnet nuget push | Überträgt ein Paket auf den Server und veröffentlicht es. |
dotnet nuget locals | Löscht lokale NuGet-Ressourcen, z.B. den http-Anforderungscache, den temporären Cache oder den Ordner mit globalen Paketen auf dem Computer, oder listet diese Ressourcen auf. |
dotnet nuget add source | Hiermit fügen Sie eine NuGet-Quelle hinzu. |
dotnet nuget disable source | Hiermit deaktivieren Sie eine NuGet-Quelle. |
dotnet nuget enable source | Hiermit aktivieren Sie eine NuGet-Quelle. |
dotnet nuget list source | Hiermit werden alle konfigurierten NuGet-Quellen aufgelistet. |
dotnet nuget remove source | Hiermit entfernen Sie eine NuGet-Quelle. |
dotnet nuget update source | Hiermit aktualisieren Sie eine NuGet-Quelle. |
Workloadbefehle
Befehl | Funktion |
---|---|
dotnet workload install | Installiert eine optionale Workload |
dotnet workload list | Listet alle installierten Workloads auf |
dotnet workload repair | Repariert alle installierten Workloads |
dotnet workload search | Listet ausgewählte Workloads oder alle verfügbaren Workloads auf |
dotnet workload uninstall | Deinstalliert eine Workload |
dotnet workload update | Installiert alle installierten Workloads neu |
Befehle für globale, Toolpfad- und lokale Tools
Tools sind Konsolenanwendungen, die über NuGet-Pakete installiert und über die Eingabeaufforderung aufgerufen werden. Sie können Tools selbst schreiben oder Drittanbietertools installieren. Tools werden auch als globale Tools, Toolpfadtools und lokale Tools bezeichnet. Weitere Informationen finden Sie unter Übersicht über die .NET-Tools.
Get-Help | Funktion |
---|---|
dotnet tool install | Installiert ein Tool auf dem Computer. |
dotnet tool list | Listet alle globalen, Toolpfad- und lokalen Tools auf, die derzeit auf Ihrem Computer installiert sind. |
dotnet tool search | Durchsucht NuGet.org nach Tools mit dem angegebenen Suchbegriff im Namen oder in den Metadaten |
dotnet tool uninstall | Deinstalliert ein Tool von Ihrem Computer. |
dotnet tool update | Aktualisiert ein Tool, das auf Ihrem Computer installiert ist. |
Weitere Tools
Die folgenden zusätzlichen Tools sind als Teil des .NET SDK verfügbar:
Tool | Funktion |
---|---|
dev-certs | Erstellt und verwaltet Entwicklungszertifikate. |
ef | Entity Framework Core-Befehlszeilentools. |
user-secrets | Verwaltet die Entwicklung von Benutzergeheimnissen. |
watch | Eine Dateiüberwachung, die eine Anwendung neu startet oder erneut lädt, wenn Änderungen im Quellcode erkannt werden. |
Geben Sie dotnet <tool-name> --help
ein, um weitere Informationen zu den einzelnen Tools zu erhalten.
Beispiele
Erstellen einer neuen .NET-Konsolenanwendung:
dotnet new console
Erstellen eines Projekts und seiner Abhängigkeiten in einem vorgegebenen Verzeichnis:
dotnet build
Ausführen einer Anwendung:
dotnet exec myapp.dll
dotnet myapp.dll