dotnet 命令
本文適用於: ✔️ .NET Core 3.1 SDK 與更新版本
名稱
dotnet
- .NET CLI 的泛型驅動程式。
概要
取得可用命令和環境的相關資訊:
dotnet [--version] [--info] [--list-runtimes] [--list-sdks]
dotnet -h|--help
執行命令 (需要安裝 SDK):
dotnet <COMMAND> [-d|--diagnostics] [-h|--help] [--verbosity <LEVEL>]
[command-options] [arguments]
執行應用程式:
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]
描述
dotnet
命令有兩個功能:
其提供使用 .NET 專案的命令。
例如,
dotnet build
可建置專案。 每個命令都會定義自己的選項和引數。 所有命令都支援--help
選項,可列印命令使用方式的簡短文件。其會執行 .NET 應用程式。
您指定了應用程式
.dll
檔案的路徑,以執行應用程式。 執行應用程式代表要找到並執行進入點,以主控台應用程式而言,則會是Main
方法。 例如,dotnet myapp.dll
會執行myapp
應用程式。 如要了解部署選項,請參閱 .NET 應用程式部署。
選項。
您可以使用不同的選項來:
- 顯示環境的相關資訊。
- 執行命令。
- 執行應用程式。
用於顯示環境資訊及可用命令的選項
當 dotnet
使用自己本身,而未指定要執行的命令或應用程式時,即可使用下列選項。 例如,dotnet --info
或 dotnet --version
。 這些命令可列印環境的相關資訊。
--info
列印 .NET 安裝及機器環境的詳細資訊,例如目前的作業系統,以及 .NET 版本的認可 SHA。
--version
列印 dotnet
命令所使用的 .NET SDK 版本,這可能會受到 global.json 檔案的影響。 必須安裝 SDK 才能使用。
--list-runtimes
列印已安裝的 .NET 執行階段清單。 x86 版本的 SDK 只會列出 x86 執行階段,而 x64 版本的 SDK 只會列出 x64 執行階段。
--list-sdks
列印已安裝的 .NET SDK 清單。
-?|-h|--help
列印可用命令的清單。
用於執行命令的選項
搭配使用 dotnet
與命令時有下列選項。 例如,dotnet build --help
或 dotnet build --verbosity diagnostic
。
-d|--diagnostics
啟用診斷輸出。
-v|--verbosity <LEVEL>
設定命令的詳細資訊層級。 允許的值為
q[uiet]
、m[inimal]
、n[ormal]
、d[etailed]
和diag[nostic]
。 並非所有命令都支援此選項。 如要判斷是否可使用此選項,請參閱特定命令的頁面。-?|-h|--help
列印指定命令的文件。 例如,
dotnet build --help
會顯示build
命令的說明。command options
每個命令都會定義該命令專屬的選項。 如需可用選項的清單,請參閱特定命令的頁面。
用於執行應用程式的選項
當 dotnet
執行應用程式時,可使用下列選項。 例如: dotnet --roll-forward Major myapp.dll
。
--additionalprobingpath <PATH>
包含探查原則和要探查之組件的路徑。 重複選項以指定多個路徑。
--additional-deps <PATH>
其他 .deps.json 檔案的路徑。 deps.json 檔案會包含相依性、編譯相依性及用來解決組件衝突的版本資訊清單。 如需詳細資訊,請參閱 GitHub 上的 Runtime Configuration Files (執行階段組態檔)。
--roll-forward <SETTING>
控制復原如何套用至應用程式。
SETTING
可以是下列任一值。 如果未指定,則預設為Minor
。LatestPatch
- 向前復原至最新的修補檔版本。 這會停用次要版本向前復原。Minor
- 若缺少要求的次要版本,則向前復原至最低次要版本的次新版本。 如果要求的次要版本存在,則會使用 LatestPatch 原則。Major
- 若缺少要求的主要版本,則向前復原至最低主要版本的次新版本,以及最低次要版本。 如果要求的主要版本存在,則會使用 Minor 原則。LatestMinor
- 即使有要求的次要版本,仍向前復原至最新的次要版本。 適用於裝載案例的元件。LatestMajor
- 即使有要求的主要版本,仍向前復原至最新的主要版本最新的次要版本。 適用於裝載案例的元件。Disable
- 不要向前復原。 只會繫結至指定的版本。 此原則不建議一般用途,因為它會停用向前復原到最新修補程式的功能。 只有測試時才建議使用這個值。
除了
Disable
以外,所有設定都會使用修補檔的可用最新版本。向前復原行為也可在專案檔屬性、執行階段組態檔屬性,及環境變數中進行設定。 如需詳細資訊,請參閱主要版本執行階段向前復原。
--fx-version <VERSION>
用來執行應用程式的 .NET 執行階段版本。
此選項會覆寫應用程式
.runtimeconfig.json
檔案中的第一個架構參考版本, 換句話說,只有當架構參考僅有一個時,此選項才能正常運作。 若應用程式有多個架構參考,使用此選項可能會造成錯誤。
使用 exec
命令執行應用程式時的選項
只有 dotnet
透過 exec
命令執行應用程式時,才能使用下列選項。 例如: dotnet exec --runtimeconfig myapp.runtimeconfig.json myapp.dll
。
--depsfile <PATH>
deps.json 檔案的路徑。 deps.json 為組態檔,其中包含執行應用程式所需的相依性資訊。 此檔案會由 .NET SDK 產生。
--runtimeconfig <PATH>
runtimeconfig.json 檔案的路徑。 runtimeconfig.json 檔案包含執行階段設定,且通常會命名為 <應用程式名稱>.runtimeconfig.json。 如需詳細資訊,請參閱 .NET 執行階段組態設定 (部分機器翻譯)。
dotnet 命令
一般
Command | 函式 |
---|---|
dotnet build | 組建 .NET 應用程式。 |
dotnet build-server | 與組建所啟動的伺服器互動。 |
dotnet clean | 清除組建輸出。 |
dotnet exec | 執行 .NET 應用程式。 |
dotnet help | 顯示命令更詳細的線上文件。 |
dotnet migrate | 將有效的 Preview 2 專案移轉至 .NET Core SDK 1.0 專案。 |
dotnet msbuild | 提供對 MSBuild 命令列的存取。 |
dotnet new | 初始化指定範本的 C# 或 F# 專案。 |
dotnet pack | 建立您程式碼的 NuGet 套件。 |
dotnet publish | 發行 .NET 與 Framework 相依的應用程式或獨立應用程式。 |
dotnet restore | 還原所指定應用程式的相依性。 |
dotnet run | 從原始檔執行應用程式。 |
dotnet sdk check | 顯示已安裝之 SDK 和執行階段版本的最新狀態。 |
dotnet sln | 要在方案檔中新增、移除及列出專案的選項。 |
dotnet store | 在執行階段套件存放區中儲存組件。 |
dotnet test | 使用測試執行器執行測試。 |
專案參考
Command | 函式 |
---|---|
dotnet add reference | 新增專案參考。 |
dotnet list reference | 列出專案參考。 |
dotnet remove reference | 移除專案參考。 |
NuGet 套件
Command | 函式 |
---|---|
dotnet add package | 新增 NuGet 套件。 |
dotnet remove package | 移除 NuGet 套件。 |
NuGet 命令
Command | 函式 |
---|---|
dotnet nuget delete | 從伺服器刪除或取消列出套件。 |
dotnet nuget push | 將套件推送至伺服器並發行。 |
dotnet nuget locals | 清除或列出本機 NuGet 資源,例如 http-request 快取、暫時快取,或整部電腦的全域套件資料夾。 |
dotnet nuget add source | 新增 NuGet 來源。 |
dotnet nuget disable source | 停用 NuGet 來源。 |
dotnet nuget enable source | 啟用 NuGet 來源。 |
dotnet nuget list source | 列出所有已設定的 NuGet 來源。 |
dotnet nuget remove source | 移除 NuGet 來源。 |
dotnet nuget update source | 更新 NuGet 來源。 |
工作負載命令
Command | 函式 |
---|---|
dotnet workload install | 安裝選用的工作負載。 |
dotnet workload list | 列出所有已安裝的工作負載。 |
dotnet workload repair | 修復所有已安裝的工作負載。 |
dotnet workload search | 列出所選的工作負載,或列出所有可用的工作負載。 |
dotnet workload uninstall | 解除安裝工作負載。 |
dotnet workload update | 重新安裝所有已安裝的工作負載。 |
全域、工具路徑和本機工具命令
工具是主控台應用程式,其會透過 NuGet 封裝安裝,並透過命令提示字元叫用。 您可以自行撰寫工具,或安裝第三方所撰寫的工具。 工具也稱為全域工具、工具路徑工具和本機工具。 如需詳細資訊,請參閱 .NET 工具概觀 (部分機器翻譯)。
Command | 函式 |
---|---|
dotnet tool install | 將工具安裝到您的機器上。 |
dotnet tool list | 列出您機器目前安裝的所有全域、工具路徑或本機工具。 |
dotnet tool search | 在 NuGet.org 搜尋名稱或中繼資料中具備指定搜尋字詞的工具。 |
dotnet tool uninstall | 從機器中解除安裝工具。 |
dotnet tool update | 更新機器上所安裝的工具。 |
其他工具
下列其他工具可在 .NET SDK 中取得:
工具 | 函式 |
---|---|
dev-certs | 建立及管理開發憑證。 |
ef | Entity Framework Core 命令列工具。 |
user-secrets | 管理開發使用者祕密。 |
watch | 檔案監看員,當其在原始程式碼中偵測到變更,即會重新啟動或熱重新載入應用程式。 |
如需每個工具的詳細資訊,請鍵入 dotnet <tool-name> --help
。
範例
建立新的 .NET 主控台應用程式:
dotnet new console
建置所指定目錄中的專案和其相依性:
dotnet build
執行應用程式:
dotnet exec myapp.dll
dotnet myapp.dll