This browser is no longer supported.
Upgrade to Microsoft Edge to take advantage of the latest features, security updates, and technical support.
Note
Access to this page requires authorization. You can trysigning in orchanging directories.
Access to this page requires authorization. You can trychanging directories.
This article applies to: ✔️ .NET Core 3.1 SDK and later versions
The .NET command-line interface (CLI) is a cross-platform toolchain for developing, building, running, and publishing .NET applications.
The .NET CLI is included with the.NET SDK. For more information about how to install the .NET SDK, seeInstall .NET. After installing the SDK, you can run CLI commands by opening a terminal and entering the commands at the terminal prompt.
CLI command structure consists ofthe driver ("dotnet"),the command, and possibly commandarguments andoptions. You see this pattern in most CLI operations, such as creating a new console app, and running it from the command line. The following commands show when the console app was run from a directory namedmy_app:
dotnet new consoledotnet build --output ./build_outputdotnet ./build_output/my_app.dllThe driver is nameddotnet and has two responsibilities, either running aframework-dependent app or executing a command.
To run a framework-dependent app, specify the path to the app's .dll file after the driver without specifying a command, for example,dotnet /path/to/my_app.dll. When executing the command from the folder where the app's DLL resides, just executedotnet my_app.dll. For more information, see thedotnet command.
When you supply a command to the driver,dotnet.exe starts the CLI command execution process. For example:
dotnet buildFirst, the driver determines the version of the SDK to use. If there's noglobal.json file, the latest version of the SDK available is used. After the SDK version is determined, it executes the command.
The command performs an action. For example,dotnet build builds code.dotnet publish publishes code. See theCLI commands section for a list of commands.
The arguments you pass on the command line are the arguments to the command invoked or to options specified with the command. For example, when you executedotnet publish my_app.csproj, themy_app.csproj argument indicates the project to publish and is passed to thepublish command.
The options you pass on the command line are the options to the command invoked. For example, when you executedotnet publish --output /build_output, the--output option and its value provided by the/build_output argument are passed to thepublish command.
The following commands are installed by default:
package addpackage downloadpackage listpackage removepackage searchpackage updateproject convert (Available since .NET 10 SDK)reference addreference listreference removenuget deletenuget localsnuget pushnuget add source (Available since .NET Core 3.1.200 SDK)nuget disable source (Available since .NET Core 3.1.200 SDK)nuget enable source (Available since .NET Core 3.1.200 SDK)nuget list source (Available since .NET Core 3.1.200 SDK)nuget remove source (Available since .NET Core 3.1.200 SDK)nuget update source (Available since .NET Core 3.1.200 SDK)nuget verify (Available since .NET 5 SDK)nuget trust (Available since .NET 5 SDK)nuget sign (Available since .NET 6 SDK)nuget why (Available since .NET 8.0.4xx SDK)workload (Available since .NET 7 SDK)workload clean (Available since .NET 6 SDK)workload config (Available since .NET 8.0.400 SDK)workload install (Available since .NET 6 SDK)workload history (Available since .NET 6 SDK)workload list (Available since .NET 6 SDK)workload update (Available since .NET 6 SDK)workload restore (Available since .NET 6 SDK)workload repair (Available since .NET 6 SDK)workload uninstall (Available since .NET 6 SDK)workload search (Available since .NET 6 SDK)Tools are console applications that are installed from NuGet packages and are invoked from the command prompt. You can write tools yourself or install tools written by third parties. Tools are also known as global tools, tool-path tools, and local tools. For more information, see.NET tools overview.
Was this page helpful?
Need help with this topic?
Want to try using Ask Learn to clarify or guide you through this topic?
Was this page helpful?
Want to try using Ask Learn to clarify or guide you through this topic?