.NET CLI 概觀
本文適用於: ✔️ .NET Core 3.1 SDK 與更新版本
.NET 命令列介面 (CLI) 是用於開發、建立、執行和發佈 .NET 應用程式的跨平台工具鏈。
.NET CLI 隨附於 .NET SDK。 如需如何安裝 .NET SDK 的詳細資訊,請參閱安裝 .NET Core。
CLI 命令
預設會安裝下列命令:
基本命令
new
restore
build
publish
run
test
vstest
pack
migrate
clean
sln
help
store
watch
format
(自 .NET 6 SDK 起提供使用)
專案修改命令
NuGet 命令
nuget delete
nuget locals
nuget push
nuget add source
(自 .NET Core 3.1.200 SDK 起提供使用)nuget disable source
(自 .NET Core 3.1.200 SDK 起提供使用)nuget enable source
(自 .NET Core 3.1.200 SDK 起提供使用)nuget list source
(自 .NET Core 3.1.200 SDK 起提供使用)nuget remove source
(自 .NET Core 3.1.200 SDK 起提供使用)nuget update source
(自 .NET Core 3.1.200 SDK 起提供使用)nuget verify
(自 .NET 5.0 SDK 起提供使用)nuget trust
(自 .NET 5 SDK 起提供使用)nuget sign
(自 .NET 6 SDK 起提供使用)
工作負載管理命令
workload
(自 .NET 7 SDK 起提供使用)workload install
(自 .NET 6 SDK 起提供使用)workload list
(自 .NET 6 SDK 起提供使用)workload update
(自 .NET 6 SDK 起提供使用)workload restore
(自 .NET 6 SDK 起提供使用)workload repair
(自 .NET 6 SDK 起提供使用)workload uninstall
(自 .NET 6 SDK 起提供使用)workload search
(自 .NET 6 SDK 起提供使用)
進階命令
工具管理命令
工具是主控台應用程式,其會透過 NuGet 封裝安裝,並透過命令提示字元叫用。 您可以自行撰寫工具,或安裝第三方所撰寫的工具。 工具也稱為全域工具、工具路徑工具和本機工具。 如需詳細資訊,請參閱 .NET 工具概觀。
命令結構
CLI 命令結構包含驅動程式 ("dotnet")、命令,以及可能的命令引數及選項。 您可以在大部分的 CLI 作業中看到此模式,例如建立新的主控台應用程式,並從命令列執行它。 下列命令顯示從名為 my_app 的目錄執行主控台應用程式的情況:
dotnet new console
dotnet build --output ./build_output
dotnet ./build_output/my_app.dll
驅動程式
驅動器的名稱是 dotnet,且有兩個責任:執行相依於架構的應用程式或執行命令。
若要執行相依於架構的應用程式,請在驅動器之後指定應用程式,例如 dotnet /path/to/my_app.dll
。 從應用程式的 DLL 所在的資料夾執行命令時,只要執行 dotnet my_app.dll
即可。 如果想要使用特定版本的 .NET 執行階段,請使用 --fx-version <VERSION>
選項。 如需詳細資訊,請參閱 dotnet 命令。
當您提供命令給驅動器時,dotnet.exe
會啟動 CLI 命令執行程序。 例如:
dotnet build
首先,驅動器會決定要使用的 SDK 版本。 若沒有 global.json 檔案,將會使用最新可用版本的 SDK。 根據機器上的最新內容,SDK 的版本可能是預覽或穩定版本。 確定 SDK 版本之後,就會開始執行命令。
Command
此命令會執行動作。 例如,dotnet build
會建置程式碼。 dotnet publish
會發佈程式碼。 命令是使用 dotnet {command}
慣例實作為主控台應用程式。
引數
您在命令列上傳遞的引數即為叫用命令的引數。 例如,當您執行 dotnet publish my_app.csproj
,my_app.csproj
引數表示要發佈的專案,並且會傳遞給 publish
命令。
選項
您在命令列上傳遞的選項即為叫用命令的選項。 例如,當您執行 dotnet publish --output /build_output
,--output
選項及其值會傳遞給 publish
命令。