Comando dotnet

Este artigo se aplica a: ✔️ SDK do .NET Core 3.1 e versões posteriores

Nome

dotnet - O driver genérico para a CLI do .NET.

Sinopse

Para obter informações sobre os comandos disponíveis e o ambiente:

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

dotnet -h|--help

Para executar um comando (requer instalação do SDK):

dotnet <COMMAND> [-d|--diagnostics] [-h|--help] [--verbosity <LEVEL>]
    [command-options] [arguments]

Para executar um aplicativo.

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]

Descrição

O comando dotnet tem duas funções:

  • Ele fornece comandos para trabalhar com projetos .NET.

    Por exemplo, dotnet build compila um projeto. Cada comando define suas próprias opções e argumentos. Todos os comandos dão suporte à opção --help para imprimir uma breve documentação sobre como usar o comando.

  • Ele executa aplicativos .NET.

    Especifique o caminho para um arquivo .dll de aplicativo para executá-lo. Executar o aplicativo significa localizar e executar o ponto de entrada, que no caso de aplicativos de console é o método Main. Por exemplo, dotnet myapp.dll executa o aplicativo myapp. Consulte Implantação de um aplicativo .NET para saber mais sobre as opções de implantação.

Opções

Diferentes opções estão disponíveis para:

  • Exibir informações de solução de problemas sobre o ambiente.
  • Executar um comando
  • Executar um aplicativo.

Opções para exibir informações de ambiente e comandos disponíveis

As opções a seguir estão disponíveis quando dotnet é usado por si só, sem especificar um comando ou um aplicativo a ser executado. Por exemplo, dotnet --info ou dotnet --version. Eles imprimem informações sobre o ambiente.

  • --info

    Imprime informações detalhadas sobre uma instalação do .NET e o ambiente do computador, como o sistema operacional atual, e o SHA da confirmação da versão do .NET.

  • --version

Imprime a versão do SDK do .NET usada por comandos dotnet, que podem ser afetados por um arquivo global.json . Disponível somente quando o SDK estiver instalado.

  • --list-runtimes

    Imprime uma lista dos runtimes do .NET instalados. Uma versão x86 do SDK lista apenas runtimes x86 e uma versão x64 do SDK lista apenas runtimes x64.

  • --list-sdks

    Imprime uma lista dos SDKs do .NET instalados.

  • -?|-h|--help

    Imprime uma lista de comandos disponíveis.

Opções para executar um comando

As opções a seguir são para dotnet com um comando. Por exemplo, dotnet build --help ou dotnet build --verbosity diagnostic.

  • -d|--diagnostics

    Habilita a saída de diagnóstico.

  • -v|--verbosity <LEVEL>

    Define o nível de detalhes do comando. Os valores permitidos são q[uiet], m[inimal], n[ormal], d[etailed] e diag[nostic]. Não há suporte em todos os comandos. Consulte a página de comando específica para determinar se essa opção está disponível.

  • -?|-h|--help

    Imprime a documentação para um determinado comando. Por exemplo, dotnet build --help exibe ajuda para o comando build.

  • command options

    Cada comando define opções específicas para esse comando. Consulte a página de comandos específica para obter uma lista de opções disponíveis.

Opções para executar um aplicativo

As opções a seguir estão disponíveis quando dotnet executa um aplicativo. Por exemplo, dotnet --roll-forward Major myapp.dll.

  • --additionalprobingpath <PATH>

    Caminho que contém a política de investigação e os assemblies a serem investigados. Repita a opção para especificar vários caminhos.

  • --additional-deps <PATH>

    Caminho para um arquivo .deps.json adicional. Um arquivo deps.json contém uma lista de dependências, dependências de compilação e informações de versão usadas para resolver conflitos de assembly. Para obter mais informações, confira Arquivos de configuração de runtime no GitHub.

  • --roll-forward <SETTING>

    Controla como o roll forward é aplicado ao aplicativo. O SETTING pode ser um dos seguintes valores. Se não for especificado, o padrão será Minor.

    • LatestPatch - Efetue roll forward para a versão de patch mais recente. Isso desabilita o roll forward da versão secundária.
    • Minor - Se a versão secundária solicitada estiver ausente, efetue roll forward para a menor versão secundária mais alta. Se a versão secundária solicitada estiver presente, a política LatestPatch será usada.
    • Major - Se a versão principal solicitada estiver ausente, efetuar roll forward para a versão principal mais alta e a versão secundária mais baixa. Se a versão principal solicitada está presente, a política Secundária é usada.
    • LatestMinor - Efetue roll forward para a versão secundária mais recente, mesmo se a versão secundária solicitada estiver presente. Destinado a cenários de hospedagem de componente.
    • LatestMajor - Efetue roll forward para a versão principal e a secundária mais altas, mesmo se a principal solicitada estiver presente. Destinado a cenários de hospedagem de componente.
    • Disable - Não efetue roll forward. Associar somente à versão especificada. Essa política não é recomendada para uso geral, pois ela desabilita a capacidade de efetuar roll forward para os patches mais recentes. Esse valor só é recomendado para teste.

    Com exceção de Disable, todas as configurações usarão a versão de patch mais recente disponível.

    O comportamento de roll forward também pode ser configurado em uma propriedade de arquivo de projeto, uma propriedade de arquivo de configuração de runtime e uma variável de ambiente. Para obter mais informações, consulte o roll-forward do runtime de versão principal.

  • --fx-version <VERSION>

    Versão do runtime do .NET a ser usada para executar o aplicativo.

    Essa opção substitui a versão da primeira referência de estrutura no arquivo do aplicativo .runtimeconfig.json. Isso significa que ele só funcionará conforme o esperado se houver apenas uma referência de estrutura. Se o aplicativo tiver mais de uma referência de estrutura, usar essa opção poderá causar erros.

Opções para executar um aplicativo com o comando exec

As opções a seguir estão disponíveis somente quando dotnet executa um aplicativo usando o comando exec. Por exemplo, dotnet exec --runtimeconfig myapp.runtimeconfig.json myapp.dll.

  • --depsfile <PATH>

    Caminho para um arquivo deps.json. Um arquivo deps.json é um arquivo de configuração que contém informações sobre dependências necessárias para executar o aplicativo. Esse arquivo é gerado pelo SDK do .NET.

  • --runtimeconfig <PATH>

    Caminho para um arquivo runtimeconfig.json. Um arquivo runtimeconfig.json contém configurações de tempo de execução e normalmente é nomeado <applicationname.runtimeconfig.json>. Para obter mais informações, consulte Definições de configuração de runtime do .NET.

Comandos dotnet

Geral

Comando Função
dotnet build Cria um aplicativo .NET.
dotnet build-server Interage com servidores iniciados por um build.
dotnet clean Limpa saídas de build.
dotnet exec Executa um aplicativo .NET.
dotnet help Mostra uma documentação mais detalhada online para o comando.
dotnet migrate Migra um projeto válido da Visualização 2 para um projeto do SDK 1.0 do .NET Core.
dotnet msbuild Oferece acesso à linha de comando do MSBuild.
dotnet new Inicializa um projeto do C# ou F# de um modelo especificado.
dotnet pack Cria um pacote NuGet do seu código.
dotnet publish Publica um aplicativo dependente do .NET Framework ou autocontido.
dotnet restore Restaura as dependências para um determinado aplicativo.
dotnet run Executa o aplicativo na origem.
dotnet sdk check Mostra o status atualizado das versões instaladas do SDK e do Runtime.
dotnet sln Opções para adicionar, remover e listar projetos em um arquivo de solução.
dotnet store Armazena os assemblies no repositório de pacotes de runtime.
dotnet test Executa testes usando um executor de teste.

Referências de projeto

Comando Função
dotnet add reference Adiciona uma referência ao projeto.
dotnet list reference Lista referências ao projeto.
dotnet remove reference Remove uma referência ao projeto.

Pacotes NuGet

Comando Função
dotnet add package Adiciona um pacote NuGet.
dotnet remove package Remove um pacote NuGet.

Comandos NuGet

Comando Função
dotnet nuget delete Exclui ou retira da lista um pacote do servidor.
dotnet nuget push Envia um pacote ao servidor e os publica.
dotnet nuget locals Limpa ou lista os recursos locais do NuGet, como cache de solicitação http, cache temporário ou pasta de pacotes globais em todo o computador.
dotnet nuget add source Adiciona uma origem do NuGet.
dotnet nuget disable source Desabilita uma origem do NuGet.
dotnet nuget enable source Habilita uma origem do NuGet.
dotnet nuget list source Lista todas as fontes configuradas do NuGet.
dotnet nuget remove source Remove uma origem do NuGet.
dotnet nuget update source Atualiza uma origem do NuGet.

Comandos de carga de trabalho

Comando Função
dotnet workload install Instala uma carga de trabalho opcional.
dotnet workload list Lista todas as cargas de trabalho instaladas.
dotnet workload repair Repara todas as cargas de trabalho instaladas.
dotnet workload search Listar cargas de trabalho selecionadas ou todas as cargas de trabalho disponíveis.
dotnet workload uninstall Desinstala uma carga de trabalho.
dotnet workload update Reinstala todas as cargas de trabalho instaladas.

Comandos globais, de caminho de ferramentas e de ferramentas locais

Ferramentas são aplicativos de console instalados a partir de pacotes NuGet e invocados no prompt de comando. Você pode escrever ferramentas por conta própria ou instalar ferramentas escritas por terceiros. As ferramentas também são conhecidas como ferramentas globais, locais e de percurso. Para obter mais informações, consulte Visão geral das ferramentas do .NET.

Comando Função
dotnet tool install Instala uma ferramenta no seu computador.
dotnet tool list Lista todas as ferramentas globais, de caminho de ferramenta ou locais instaladas no computador no momento.
dotnet tool search Pesquisa NuGet.org ferramentas que têm o termo de pesquisa especificado em seu nome ou metadados.
dotnet tool uninstall Desinstala uma ferramenta do computador.
dotnet tool update Atualiza uma ferramenta instalada em seu computador.

Ferramentas adicionais

As seguintes ferramentas adicionais estão disponíveis como parte do SDK do .NET:

Ferramenta Função
dev-certs Cria e gerencia certificados de desenvolvimento.
ef Ferramentas de linha de comando do Entity Framework Core.
user-secrets Gerencia os segredos do usuário de desenvolvimento.
inspecionar Um observador de arquivos que reinicia ou recarrega um aplicativo quando detecta alterações no código-fonte.

Para obter mais informações sobre cada ferramenta, digite dotnet <tool-name> --help.

Exemplos

Criar um aplicativo de console .NET:

dotnet new console

Compile um projeto e suas dependências em um determinado diretório:

dotnet build

Executar um aplicativo:

dotnet exec myapp.dll
dotnet myapp.dll

Confira também