共用方式為


dotnet 工具執行

本文適用於: ✔️.NET 10.0.100 SDK 和更新版本

名稱

dotnet tool exec - 下載並叫用 .NET 工具,而不永久安裝它。

概要

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

dotnet tool exec 命令提供 .NET Tools 的一次性工具叫用模式。 它會自動將指定的工具套件下載至 NuGet 快取,並叫用它,而不需要修改您的系統 PATH 或需要永久安裝。

當您執行 dotnet tool exec時,指令:

  1. 根據您設定的 NuGet 摘要檢查您指定的版本 (或版本範圍) (或最新版本,如果未指定任何版本),以決定要下載的套件。
  2. 將指定的套件下載至 NuGet 快取 (如果尚未存在)。
  3. 使用任何提供的引數叫用工具。
  4. 傳回工具的結束碼。

dotnet tool exec 與全球和本地工具無縫協作。 如果您有可用的本機工具資訊清單,它會使用資訊清單來決定要執行的工具版本。

此命令也以另外兩種形式存在,以便於使用

  • dotnet dnx - 隱藏別名 dotnet tool exec 用作輕鬆實現 dnx 腳本本身的一種方式
  • dnx - 從 SDK 叫用 dotnet dnx 的 shell 指令碼。 此指令碼由安裝程式提供,可在 上取得 PATH。 它允許直接透過 dnx <toolname>非常簡單地使用工具。

Arguments

  • PACKAGE_NAME

    要執行之 .NET 工具的 NuGet 套件識別碼。 您可以選擇性地使用語法指定 @ 版本,例如 dotnetsay@2.1.0

  • tool-arguments

    要傳遞給正在執行的工具的引數。 之後 -- 的所有內容都直接傳遞到工具。

選項

  • --allow-roll-forward

    如果未安裝工具的目標執行階段,則允許工具使用較新版本的 .NET 執行階段。

  • --add-source <SOURCE>

    新增其他 NuGet 套件來源以在安裝期間使用。 摘要會平行存取,而不是以後援串聯順序存取。 如果多個摘要中提供相同的套件和版本,則最快的摘要會獲勝。 如需詳細資訊,請參閱 安裝 NuGet 套件時會發生什麼事。 您可以使用 NuGet 套件來源對應來控制此專案。 如需詳細資訊,請參閱 套件來源對應

  • --configfile <FILE>

    要使用的 NuGet 組態檔 (nuget.config)。 若已指定,僅會使用此檔案中的設定。 若未指定,則將使用當前目錄中組態檔的階層。 如需詳細資訊,請參閱常見的 NuGet 組態

  • --disable-parallel

    避免平行還原多個專案。

  • --ignore-failed-sources

    將套件來源失敗視為警告。

  • --interactive

    允許命令停止並等候使用者輸入或動作。 例如,若要完成驗證。

  • --no-http-cache

    不會將 HTTP 要求快取至已設定的 NuGet 摘要。

  • --prerelease

    允許在解析要安裝的版本時選取發行前版本套件。

  • --source <SOURCE>

    指定 NuGet 套件的來源。

  • -v|--verbosity <LEVEL>

    設定命令的詳細資訊層級。 允許的值為 q[uiet]m[inimal]n[ormal]d[etailed]diag[nostic]。 預設值為 normal。 如需詳細資訊,請參閱LoggerVerbosity

  • -?|-h|--help

    輸出有關如何使用命令的說明。

範例

  • dotnet tool exec dotnetsay

    下載(如有必要)並運行該工具的 dotnetsay 最新版本。

  • dotnet tool exec dotnetsay@2.1.0

    下載(如有必要)並運行該 dotnetsay 工具的 2.1.0 版。

  • dotnet tool exec dotnetsay@2.*

    下載(如有必要)並運行 2.x 版本範圍內的最新版本的工具 dotnetsay

  • dotnet tool exec dotnetsay -- Hello World

    執行 dotnetsay 工具,並將 “Hello World” 作為引數傳遞給工具。

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

    使用指定的 NuGet 來源下載並執行 mytool

與其他命令的比較

此命令旨在成為使用 .NET Tools 的統一方式。 雖然先前可用的工具安裝命令仍然可用, dotnet tool exec 但為大多數使用者提供了更簡單、更靈活的體驗。

Command 目標 安裝 Scope
dotnet tool exec 一次性執行 無 (僅限快取) Temporary
dotnet tool install -g 永久全球安裝 全球 全系統
dotnet tool install 永久本地安裝 本機資訊清單 專案
dotnet tool run 執行已安裝的本機工具 需要事先安裝 專案

dotnet tool install -g 命令對於想要永久安裝工具的用戶仍然具有重要作用。 但是,對於想要試用工具或在 CI/CD 管道中運行它的用戶來說, dotnet tool exec 通常更適合。

另請參閱