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 die Main-Methode. Beispiel: dotnet myapp.dll führt die Anwendung myapp aus. Weitere Informationen über Bereitstellungsoptionen finden Sie unter .NET-Anwendungsbereitstellung.

Optionen

Verschiedene Optionen sind verfügbar für:

  • Anzeigen von Informationen über die 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

Druckt die Version des .NET SDK aus, das von dotnet Befehlen verwendet wird, die möglicherweise von einer global.json-Datei betroffen sind. 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] und diag[nostic]. Nicht in jedem Befehl unterstützt. Auf der Seite der einzelnen Befehle finden Sie heraus, ob diese Option verfügbar ist.

  • -?|-h|--help

    Druckt die Dokumentation für einen bestimmten Befehl aus. Zeigt beispielsweise dotnet build --help Hilfe für den build Befehl an.

  • 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 Standard Minor 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 mithilfe des exec Befehls 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 wird in der Regel "applicationname.runtimeconfig.json" genannt<>. 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 im Rahmen 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 heiß neu 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

Siehe auch