Freigeben über


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.

Zusammenfassung

So erhalten Sie Informationen zu den verfügbaren Befehlen und der Umgebung:

dotnet [--version] [--info] [--list-runtimes] [--list-sdks]

dotnet -h|--help

So führen Sie einen Befehl aus (erfordert 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 <PATH>] [--additional-deps <PATH>]
    [--depsfile <PATH>]
    [--fx-version <VERSION>]  [--roll-forward <SETTING>]
    [--runtimeconfig <PATH>]
    <PATH_TO_APPLICATION> [arguments]

BESCHREIBUNG

Der dotnet Befehl verfügt über zwei Funktionen:

  • Sie stellt Befehle zum Arbeiten mit .NET-Projekten bereit.

    Beispielsweise erstellt dotnet build ein Projekt. Jeder Befehl definiert seine eigenen Optionen und Argumente. Alle Befehle unterstützen die --help Option zum Drucken kurzer Dokumentation zur Verwendung des Befehls.

  • Er führt .NET-Anwendungen aus.

    Sie geben den Pfad zu einer Anwendungsdatei .dll an, um die Anwendung auszuführen. Zum Ausführen der Anwendung bedeutet das Suchen und Ausführen des Einstiegspunkts, bei dem konsolen-Apps die #D0-Methode ist. Führt die Anwendung z. B dotnet myapp.dll . aus myapp . Weitere Informationen zu 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 von sich selbst verwendet werden, ohne einen Befehl oder eine auszuführende Anwendung anzugeben. Beispiel: dotnet --info oder dotnet --version. Sie drucken Informationen über die Umgebung aus.

  • --info

    Druckt detaillierte Informationen zu einer .NET-Installation und der Computerumgebung, z. B. dem aktuellen Betriebssystem, und commit SHA der .NET-Version.

  • --version

Druckt die Version des .NET SDK, das von dotnet Befehlen verwendet wird, die von einer global.json Datei betroffen sein können. Nur verfügbar, wenn das SDK installiert ist.

  • --list-runtimes [--arch <ARCH>]

    Druckt eine Liste der installierten .NET-Runtimes für die Architektur der aufgerufenen dotnet. Eine x86-Version von dotnet Listen nur x86-Laufzeiten und eine x64-Version von dotnet Listen nur x64-Runtimes.

    .NET 10 und höhere Versionen unterstützen das --arch Argument. Wenn angegeben und nicht mit der dotnet Architektur identisch, sucht sie nach einer .NET-Installation der angegebenen Architektur und druckt alle dort installierten Laufzeiten aus. Zulässige Werte sind arm64, x64 und x86. Das Dotnet/Runtime-Repository enthält die vollständige Liste der gültigen Architekturwerte.

  • --list-sdks [--arch <ARCH>]

    Druckt eine Liste der installierten .NET-SDKs für die Architektur der aufgerufenen dotnet. Eine x86-Version von dotnet Listen nur x86-SDKs und eine x64-Version von dotnet Listen nur x64-SDKs.

    .NET 10 und höhere Versionen unterstützen das --arch Argument. Wenn angegeben und nicht mit der dotnet Architektur identisch, wird nach einer .NET-Installation der angegebenen Architektur gesucht und alle dort installierten SDKs ausgegeben. Zulässige Werte sind arm64, x64 und x86. Das Dotnet/Runtime-Repository enthält die vollständige Liste der gültigen Architekturwerte.

  • -?|-h|--help

    Druckt eine Liste der verfügbaren Befehle aus.

Optionen zum Ausführen eines Befehls

Die folgenden Optionen gelten für dotnet einen Befehl. Beispiel: dotnet build --help oder dotnet build --verbosity diagnostic.

  • -d|--diagnostics

    Aktiviert die Diagnoseausgabe.

  • -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]. Wird in jedem Befehl nicht unterstützt. Sehen Sie sich eine bestimmte Befehlsseite an, um festzustellen, ob diese Option verfügbar ist.

  • -?|-h|--help

    Druckt die Dokumentation für einen bestimmten Befehl. Zeigt z. B dotnet build --help . die 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 bestimmten Befehlsseite.

Optionen zum Ausführen einer Anwendung

Die folgenden Optionen sind verfügbar, wenn dotnet eine Anwendung ausgeführt wird. Beispiel: dotnet --roll-forward Major myapp.dll.

  • --additionalprobingpath <PATH>

    Pfad, der die Probingrichtlinie und Assemblys zum Untersuchen 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 von Abhängigkeiten, Kompilierungsabhängigkeiten und Versionsinformationen, die zur Behebung von Assemblykonflikten verwendet werden. Weitere Informationen finden Sie unter Runtime-Konfigurationsdateien auf GitHub.

  • --roll-forward <SETTING>

    Steuert, wie der Roll forward auf die App angewendet wird. Dies SETTING kann einer der folgenden Werte sein: Wenn nichts anderes angegeben wird, wird als Standard Minor verwendet.

    • LatestPatch – Roll forward to the highest patch version. Dadurch wird das Roll-Forward der Nebenversion deaktiviert.
    • Minor – Roll forward to the lowest higher minor version, if requested minor version is missing. Wenn die angeforderte Nebenversion vorhanden ist, wird die LatestPatch-Richtlinie verwendet.
    • Major – Roll forward to lowest higher major version, and lowest minor version, if requested major version is missing. Wenn die angeforderte Hauptversion vorhanden ist, wird die Nebenrichtlinie verwendet.
    • LatestMinor – Roll forward to highest minor version, even if requested minor version is present. Für Komponentenhostingszenarien vorgesehen.
    • LatestMajor – Roll forward to highest major and highest minor version, even if requested major is present. Für Komponentenhostingszenarien vorgesehen.
    • Disable – Führen Sie keinen Roll forward durch. Binden Sie nur an die angegebene Version. Diese Richtlinie wird nicht für die allgemeine Verwendung empfohlen, da die Möglichkeit zum Weiterleiten an die neuesten Patches deaktiviert wird. Dieser Wert wird nur für Tests empfohlen.

    Mit Ausnahme von Disable, verwenden alle Einstellungen die höchste verfügbare Patchversion.

    Roll forward behavior can also be configured in a project file property, a runtime configuration file property, and an environment variable. Weitere Informationen finden Sie unter "Hauptversions-Laufzeitroll forward".

  • --fx-version <VERSION>

    Version der .NET-Laufzeit, die zum Ausführen der Anwendung verwendet werden soll.

    Mit dieser Option wird die Version des ersten Frameworkverweises in der #D0-Datei der Anwendung außer Kraft gesetzt. Dies bedeutet, dass es nur wie erwartet funktioniert, wenn nur ein Frameworkverweis vorhanden ist. Wenn die Anwendung mehr als einen Frameworkverweis aufweist, kann die Verwendung dieser Option Fehler verursachen.

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 deps.json Datei 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>

    Pfad zu einer runtimeconfig.json Datei. Eine runtimeconfig.json Datei enthält Laufzeiteinstellungen und wird in der Regel als Anwendungsname<.runtimeconfig.jsonbezeichnet>. Weitere Informationen finden Sie unter .NET-Laufzeit-Konfigurationseinstellungen.

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 Clean build outputs.
dotnet exec Führt eine .NET-Anwendung aus.
dotnet-Hilfe Zeigt detailliertere Dokumentation online für den Befehl.
dotnet migrate Migriert ein gültiges Preview 2-Projekt zu einem .NET Core SDK 1.0-Projekt.
dotnet msbuild Bietet Zugriff auf die MSBuild-Befehlszeile.
dotnet new Initialisiert ein C#- oder F#-Projekt für eine bestimmte Vorlage.
dotnet pack Erstellt ein NuGet-Paket ihres Codes.
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 up-to-Datumsstatus der installierten SDK- und Laufzeitversionen an.
dotnet sln Optionen zum Hinzufügen, Entfernen und Auflisten von Projekten in einer Lösungsdatei.
dotnet store Speichert Assemblys im Laufzeitpaketspeicher.
dotnet test Führt Tests mit einem Testläufer aus.

Projektverweise

Befehl Funktion
dotnet Referenz hinzufügen Fügt einen Projektverweis hinzu.
Dotnet-Referenzliste Listet Projektverweise auf.
dotnet reference remove Entfernt einen Projektverweis.

NuGet-Pakete

Befehl Funktion
dotnet-Paket hinzufügen Fügt ein NuGet-Paket hinzu.
Dotnet-Paketliste Listet NuGet-Pakete auf.
dotnet-Paket entfernen Entfernt ein NuGet-Paket.
Dotnet-Paketsuche Sucht nach einem NuGet-Paket.

NuGet-Befehle

Befehl Funktion
dotnet nuget delete Löscht oder hebt die Liste eines Pakets vom Server auf.
dotnet nuget push Verschiebt ein Paket an den Server und veröffentlicht es.
dotnet nuget locals Löscht lokale NuGet-Ressourcen wie http-Anforderungscache, temporären Cache oder computerweiten globalen Paketordner.
dotnet nuget quelle hinzufügen Fügt eine NuGet-Quelle hinzu.
dotnet nuget disable source Deaktiviert eine NuGet-Quelle.
dotnet nuget enable source Aktiviert eine NuGet-Quelle.
dotnet nuget list source Listet alle konfigurierten NuGet-Quellen auf.
dotnet nuget remove source Entfernt eine NuGet-Quelle.
dotnet nuget update source Aktualisiert eine NuGet-Quelle.

Workloadbefehle

Befehl Funktion
dotnet workload install Installiert eine optionale Workload.
Dotnet-Workloadliste Listet alle installierten Workloads auf.
Reparatur der dotnet-Workload Repariert alle installierten Workloads.
Dotnet-Workloadsuche 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, Toolpfade und lokale Tools

Tools sind Konsolenanwendungen, die aus NuGet-Paketen installiert sind und über die Eingabeaufforderung aufgerufen werden. Sie können Tools selbst schreiben oder Tools installieren, die von Dritten geschrieben wurden. Tools werden auch als globale Tools, Toolpfadtools und lokale Tools bezeichnet. Weitere Informationen finden Sie unter Überblick über .NET-Tools.

Befehl Funktion
dotnet tool install Installiert ein Tool auf Ihrem Computer.
Dotnet-Toolliste Listet alle globalen, Toolpfade oder lokalen Tools auf, die derzeit auf Ihrem Computer installiert sind.
Dotnet-Toolsuche Sucht NuGet.org nach Tools, die den angegebenen Suchbegriff in ihrem Namen oder metadaten enthalten.
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:

Werkzeug Funktion
dev-certs Erstellt und verwaltet Entwicklungszertifikate.
Ef Entity Framework Core-Befehlszeilentools.
Geheime Benutzerschlüssel Verwaltet geheime Benutzerschlüssel für die Entwicklung.
Uhr Eine Dateiüberwachung, die eine Anwendung neu startet oder hot neu lädt, wenn änderungen im Quellcode erkannt werden.

Für weitere Informationen zu den einzelnen Tools geben Sie dotnet <tool-name> --helpein.

Beispiele

Erstellen Sie eine neue .NET-Konsolenanwendung:

dotnet new console

Erstellen Sie ein Projekt und dessen Abhängigkeiten in einem bestimmten Verzeichnis:

dotnet build

Führen Sie eine Anwendung aus:

dotnet exec myapp.dll
dotnet myapp.dll

Siehe auch