Partilhar via


Ferramenta DotNet Exec

Este artigo aplica-se a: ✔️ .NET 10.0.100 SDK e versões posteriores

Nome

dotnet tool exec - Baixa e invoca uma ferramenta .NET sem instalá-la permanentemente.

Sinopse

dotnet tool exec <PACKAGE_NAME>[@<VERSION>]
    [--allow-roll-forward] [-a|--arch <ARCHITECTURE>]
    [--add-source <SOURCE>] [--configfile <FILE>] [--disable-parallel]
    [--framework <FRAMEWORK>] [--ignore-failed-sources] [--interactive]
    [--no-http-cache] [--prerelease] [--source <SOURCE>]
    [-v|--verbosity <LEVEL>]
    [--] [<tool-arguments>...]

dotnet tool exec -h|--help

Description

O dotnet tool exec comando fornece um modo de invocação de ferramenta one-shot para .NET Tools. Ele baixa automaticamente o pacote de ferramentas especificado para o cache do NuGet e o invoca sem modificar seu sistema PATH ou exigir instalação permanente.

Quando você executa dotnet tool execo , o comando:

  1. Verifica a versão (ou o intervalo de versões) especificado (ou a versão mais recente, se nenhuma for especificada) em relação aos feeds NuGet configurados para decidir qual pacote baixar.
  2. Baixa o pacote especificado para o cache do NuGet (se ainda não estiver presente).
  3. Invoca a ferramenta com todos os argumentos fornecidos.
  4. Retorna o código de saída da ferramenta.

dotnet tool exec Funciona perfeitamente com ferramentas globais e locais. Se você tiver um manifesto de ferramenta local disponível, ele usará o manifesto para determinar qual versão da ferramenta deve ser executada.

Este comando também existe em duas outras formas para facilitar o uso

  • dotnet dnx - Um alias oculto para dotnet tool exec isso é usado como uma maneira de implementar facilmente o dnx próprio script
  • dnx - Um shell script que invoca dotnet dnx a partir do SDK. Este script é fornecido pelo instalador e está disponível em PATH. Ele permite o uso muito simples de ferramentas diretamente via dnx <toolname>.

Arguments

  • PACKAGE_NAME

    A ID do pacote NuGet da ferramenta .NET a ser executada. Opcionalmente, você pode especificar uma versão usando a @ sintaxe, por exemplo dotnetsay@2.1.0.

  • tool-arguments

    Argumentos a serem passados para a ferramenta que está sendo executada. Tudo depois -- é passado diretamente para a ferramenta.

Opções

  • --allow-roll-forward

    Permita que a ferramenta use uma versão mais recente do tempo de execução do .NET se o tempo de execução a que se destina não estiver instalado.

  • --add-source <SOURCE>

    Adiciona uma fonte de pacote NuGet adicional para usar durante a instalação. Os feeds são acessados em paralelo, não em uma sequência de cascata de fallback. Se o mesmo pacote e versão estiverem disponíveis em vários feeds, o feed mais rápido vence. Para obter mais informações, consulte O que acontece quando um pacote NuGet é instalado. Você pode controlar isso usando o mapeamento de origem do pacote NuGet. Para obter mais informações, consulte Mapeamento da fonte do pacote.

  • --configfile <FILE>

    O arquivo de configuração do NuGet (nuget.config) a ser usado. Se especificado, somente as configurações desse arquivo serão usadas. Se não for especificado, a hierarquia de arquivos de configuração do diretório atual será usada. Para obter mais informações, consulte Configurações comuns do NuGet.

  • --disable-parallel

    Impede a restauração de vários projetos em paralelo.

  • --ignore-failed-sources

    Trata as falhas de origem do pacote como avisos.

  • --interactive

    Permite que o comando pare e aguarde a entrada ou ação do usuário. Por exemplo, para concluir a autenticação.

  • --no-http-cache

    Não armazena em cache solicitações HTTP para os feeds NuGet configurados.

  • --prerelease

    Permite que pacotes de pré-lançamento sejam selecionados ao resolver a versão a ser instalada.

  • --source <SOURCE>

    Especifica a origem dos pacotes NuGet.

  • -v|--verbosity <LEVEL>

    Define o nível de detalhamento do comando. Os valores permitidos são q[uiet], m[inimal], n[ormal], d[etailed], e diag[nostic]. A predefinição é normal. Para obter mais informações, consulte LoggerVerbosity.

  • -?|-h|--help

    Imprime uma descrição de como usar o comando.

Examples

  • dotnet tool exec dotnetsay

    Descarrega (se necessário) e executa a versão mais recente da dotnetsay ferramenta.

  • dotnet tool exec dotnetsay@2.1.0

    Descarrega (se necessário) e executa a versão 2.1.0 da dotnetsay ferramenta.

  • dotnet tool exec dotnetsay@2.*

    Descarrega (se necessário) e executa a versão mais recente da dotnetsay ferramenta no intervalo de versões 2.x.

  • dotnet tool exec dotnetsay -- Hello World

    Executa a dotnetsay ferramenta e passa "Hello World" como argumentos para a ferramenta.

  • dotnet tool exec --add-source https://api.nuget.org/v3/index.json mytool

    Baixa e executa mytool usando a fonte NuGet especificada.

Comparação com outros comandos

Este comando destina-se a ser uma maneira unificada de trabalhar com o .NET Tools. Embora os comandos de instalação da ferramenta disponíveis anteriormente permaneçam disponíveis, dotnet tool exec fornece uma experiência mais simples e flexível para a maioria dos usuários.

Command Propósito Installation Scope
dotnet tool exec Execução one-shot Nenhum (somente em cache) Temporary
dotnet tool install -g Instalação global permanente Global Em todo o sistema
dotnet tool install Instalação local permanente Manifesto local Projeto
dotnet tool run Executar uma ferramenta local já instalada Requer instalação prévia Projeto

O dotnet tool install -g comando ainda serve a um propósito importante para os usuários que desejam instalar permanentemente uma ferramenta. No entanto, para os usuários que desejam experimentar uma ferramenta ou executá-la em um pipeline de CI/CD, dotnet tool exec geralmente é uma opção melhor.

Consulte também