You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
DotnetCommandStudy/Docs/DotnetRun命令学习.ipynb

673 lines
14 KiB
Plaintext

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"dotnet run 命令使用\n",
"=================="
]
},
{
"attachments": {},
"cell_type": "markdown",
"metadata": {},
"source": [
"## 使用经典 Powershell (Powershell 5及以下) "
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"dotnet_interactive": {
"language": "csharp"
},
"polyglot_notebook": {
"kernelName": "csharp"
}
},
"outputs": [],
"source": [
"#!powershell\n",
"\n",
"# 查看 powershell 版本信息\n",
"$PSVersionTable.PSVersion"
]
},
{
"attachments": {},
"cell_type": "markdown",
"metadata": {},
"source": [
"## 使用新版跨平台 Powershell (Powershell 6及以上)"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"dotnet_interactive": {
"language": "csharp"
},
"polyglot_notebook": {
"kernelName": "csharp"
}
},
"outputs": [],
"source": [
"#!pwsh\n",
"\n",
"# 查看 Powershell 版本\n",
"$PSVersionTable.PSVersion"
]
},
{
"attachments": {},
"cell_type": "markdown",
"metadata": {},
"source": [
"## 使用 dotnet run 命令运行 项目或程序\n",
"格式:\n",
" dotnet run [applicationArguments] [options]"
]
},
{
"attachments": {},
"cell_type": "markdown",
"metadata": {},
"source": [
"### 显示帮助信息"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"dotnet_interactive": {
"language": "csharp"
},
"polyglot_notebook": {
"kernelName": "csharp"
}
},
"outputs": [],
"source": [
"#!pwsh\n",
"dotnet run --help"
]
},
{
"attachments": {},
"cell_type": "markdown",
"metadata": {},
"source": [
"### 运行当前目录下的项目"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"dotnet_interactive": {
"language": "csharp"
},
"polyglot_notebook": {
"kernelName": "csharp"
}
},
"outputs": [],
"source": [
"#!pwsh\n",
"\n",
"# 先进入项目目录\n",
"cd ..\\DotnetDemo.CApp\n",
"\n",
"dotnet run"
]
},
{
"attachments": {},
"cell_type": "markdown",
"metadata": {},
"source": [
"### 指定项目文件\n",
"使用 --project path/xxx.csproj 参数\n",
"dotnet run --project csproj文件相对或绝对路"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"dotnet_interactive": {
"language": "pwsh"
},
"polyglot_notebook": {
"kernelName": "pwsh"
}
},
"outputs": [],
"source": [
"#!pwsh\n",
"\n",
"dotnet run --project ..\\DotnetDemo.CApp\\DotnetDemo.CApp.csproj"
]
},
{
"attachments": {},
"cell_type": "markdown",
"metadata": {},
"source": [
"### 编译方式参数 -c --configurartion Debug|Realese"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"dotnet_interactive": {
"language": "pwsh"
},
"polyglot_notebook": {
"kernelName": "pwsh"
}
},
"outputs": [],
"source": [
"#!powershell\n",
"\n",
"# Debug 模式\n",
"dotnet run --project \"..\\DotnetDemo.CApp\\DotnetDemo.CApp.csproj\" -c Debug"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"dotnet_interactive": {
"language": "pwsh"
},
"polyglot_notebook": {
"kernelName": "pwsh"
}
},
"outputs": [],
"source": [
"#!powershell\n",
"\n",
"# Reasele 模式\n",
"dotnet run --project \"..\\DotnetDemo.CApp\\DotnetDemo.CApp.csproj\" -c Release"
]
},
{
"attachments": {},
"cell_type": "markdown",
"metadata": {},
"source": [
"### 目标运行时版本参数 -f freamework"
]
},
{
"attachments": {},
"cell_type": "markdown",
"metadata": {},
"source": [
"+ .NET 5 及更高版本 netcoreapp1.0 netcoreapp1.1 netcoreapp2.0 netcoreapp2.1 netcoreapp2.2 netcoreapp3.0 netcoreapp3.1 net5.0 net6.0 net7.0\n",
"+ .NET Standard netstandard1.0 netstandard1.1 netstandard1.2 netstandard1.3 netstandard1.4 netstandard1.5 netstandard1.6 netstandard2.0 netstandard2.1\n",
"+ .NET Framework net11\n",
"net20 net35 net40\n",
"net403 net45 net451 net452 net46 net461 net462 net47 net471 net472 net48"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"dotnet_interactive": {
"language": "pwsh"
},
"polyglot_notebook": {
"kernelName": "pwsh"
}
},
"outputs": [],
"source": [
"#!powershell\n",
"\n",
"# Reasele 模式\n",
"dotnet run --project \"..\\DotnetDemo.CApp\\DotnetDemo.CApp.csproj\" -c Debug -f net7.0"
]
},
{
"attachments": {},
"cell_type": "markdown",
"metadata": {},
"source": [
"### 要传递给 MSBuild 的参数 --property \n",
"要传递给MSBuild的属性参数,开如\n",
"+ --property:NAME1=VALUE1;NAME2=VALUE2 [此种实际执行好像出错误,待解决]\n",
"+ --property:NAME1=VALUE1 --property:NAME2=VALUE2"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"dotnet_interactive": {
"language": "pwsh"
},
"polyglot_notebook": {
"kernelName": "pwsh"
}
},
"outputs": [],
"source": [
"#!powershell\n",
"\n",
"dotnet run --project \"..\\DotnetDemo.CApp\\DotnetDemo.CApp.csproj\" -c Debug -f net7.0 --proprty verbosity=detailed --proprty restore=true"
]
},
{
"attachments": {},
"cell_type": "markdown",
"metadata": {},
"source": [
"### 设置启动项参数 -lp --launch-profile \n",
"指定按:项目/Properties/launchSettings.json 文件中的启动项名称指定的项启动,即是设置launchSettings.json启动项(名称)"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"dotnet_interactive": {
"language": "pwsh"
},
"polyglot_notebook": {
"kernelName": "pwsh"
}
},
"outputs": [],
"source": [
"#!powershell\n",
"\n",
"dotnet run --project \"..\\DotnetDemo.CApp\\DotnetDemo.CApp.csproj\" --launch-profile DotnetDemo.CApp\n",
"\n",
"# 输出中有来自 launchSettings.json 的应用程序参数信息"
]
},
{
"attachments": {},
"cell_type": "markdown",
"metadata": {},
"source": [
"### 禁用启动项参数 --no-launch-profile\n",
"不要尝试使用launchSettings.json来配置应用程序\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"dotnet_interactive": {
"language": "pwsh"
},
"polyglot_notebook": {
"kernelName": "pwsh"
}
},
"outputs": [],
"source": [
"#!powershell\n",
"\n",
"dotnet run --project \"..\\DotnetDemo.CApp\\DotnetDemo.CApp.csproj\" --no-launch-profile\n",
"\n",
"# 输出中,没有来自 launchSettings.json 的应用程序参数信息"
]
},
{
"attachments": {},
"cell_type": "markdown",
"metadata": {},
"source": [
"### 运行前禁用 build 参数 --no-build"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"dotnet_interactive": {
"language": "pwsh"
},
"polyglot_notebook": {
"kernelName": "pwsh"
}
},
"outputs": [],
"source": [
"#!powershell\n",
"\n",
"dotnet run --project \"..\\DotnetDemo.CApp\\DotnetDemo.CApp.csproj\" --no-build\n",
"\n",
"# 不编译,直接执行。如果之前没有编译过,会出错。"
]
},
{
"attachments": {},
"cell_type": "markdown",
"metadata": {},
"source": [
"### 禁止运行前的项目还原 参数 --no-restore"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"dotnet_interactive": {
"language": "csharp"
},
"polyglot_notebook": {
"kernelName": "csharp"
}
},
"outputs": [],
"source": [
"#!powershell\n",
"\n",
"dotnet run --project \"..\\DotnetDemo.CApp\\DotnetDemo.CApp.csproj\" --no-restore\n",
"\n",
"# 不进行项目Neget包还原直接执行。如果之前没有restore操作会出错。"
]
},
{
"attachments": {},
"cell_type": "markdown",
"metadata": {},
"source": [
"### 用户交互参数 --interactive\n",
"是否启用用户交互模式,启用时,在程序运行中可以要求和接收用户输入数据"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"dotnet_interactive": {
"language": "csharp"
},
"polyglot_notebook": {
"kernelName": "csharp"
}
},
"outputs": [],
"source": [
"#!powershell\n",
"\n",
"dotnet run --project \"..\\DotnetDemo.CApp\\DotnetDemo.CApp.csproj\" --interactive true\n",
"\n",
"# 启用用户交互模式"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"dotnet_interactive": {
"language": "csharp"
},
"polyglot_notebook": {
"kernelName": "csharp"
}
},
"outputs": [],
"source": [
"#!powershell\n",
"\n",
"dotnet run --project \"..\\DotnetDemo.CApp\\DotnetDemo.CApp.csproj\" --interactive false\n",
"\n",
"# 禁用用户交互模式"
]
},
{
"attachments": {},
"cell_type": "markdown",
"metadata": {},
"source": [
"### 发布为自包含参数 --self-contained"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"dotnet_interactive": {
"language": "csharp"
},
"polyglot_notebook": {
"kernelName": "csharp"
}
},
"outputs": [],
"source": [
"#!powershell\n",
"\n",
"dotnet run --project \"..\\DotnetDemo.CApp\\DotnetDemo.CApp.csproj\" --self-contained\n",
"\n",
"# 发布为自包含文件"
]
},
{
"attachments": {},
"cell_type": "markdown",
"metadata": {},
"source": [
"### 发布为非自包含参娄 --no-self-contained"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"dotnet_interactive": {
"language": "csharp"
},
"polyglot_notebook": {
"kernelName": "csharp"
}
},
"outputs": [],
"source": [
"#!powershell\n",
"\n",
"dotnet run --project \"..\\DotnetDemo.CApp\\DotnetDemo.CApp.csproj\" --no-self-contained\n",
"\n",
"# 发布为非自包含文件"
]
},
{
"attachments": {},
"cell_type": "markdown",
"metadata": {},
"source": [
"### cpu架构参数 -a --arch"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"dotnet_interactive": {
"language": "csharp"
},
"polyglot_notebook": {
"kernelName": "csharp"
}
},
"outputs": [],
"source": [
"#!powershell\n",
"\n",
"dotnet run --project \"..\\DotnetDemo.CApp\\DotnetDemo.CApp.csproj\" --arch x64\n",
"\n",
"# 发布为x64程序"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"dotnet_interactive": {
"language": "csharp"
},
"polyglot_notebook": {
"kernelName": "csharp"
}
},
"outputs": [],
"source": [
"#!powershell\n",
"\n",
"dotnet run --project \"..\\DotnetDemo.CApp\\DotnetDemo.CApp.csproj\" --arch x86\n",
"\n",
"# 发布为x86程序"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"dotnet_interactive": {
"language": "csharp"
},
"polyglot_notebook": {
"kernelName": "csharp"
}
},
"outputs": [],
"source": [
"#!powershell\n",
"\n",
"# dotnet run --project \"..\\DotnetDemo.CApp\\DotnetDemo.CApp.csproj\" --arch arm64\n",
"\n",
"# 发布为arm64程序,现有操作系统不支持"
]
},
{
"attachments": {},
"cell_type": "markdown",
"metadata": {},
"source": [
"### 日志详细程序参数 -v --verbosity\n",
"值为 q[uiet] m[inimal] n[ormal] d[etailed] dia[gnostic]"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"dotnet_interactive": {
"language": "pwsh"
},
"polyglot_notebook": {
"kernelName": "pwsh"
}
},
"outputs": [],
"source": [
"#!powershell\n",
"\n",
"dotnet run --project \"..\\DotnetDemo.CApp\\DotnetDemo.CApp.csproj\" --verbosity quiet\n",
"\n",
"# q[uiet]日志等级"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"dotnet_interactive": {
"language": "pwsh"
},
"polyglot_notebook": {
"kernelName": "pwsh"
}
},
"outputs": [],
"source": [
"#!powershell\n",
"\n",
"dotnet run --project \"..\\DotnetDemo.CApp\\DotnetDemo.CApp.csproj\" --verbosity minimal\n",
"\n",
"# m[inimal]日志等级"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"dotnet_interactive": {
"language": "pwsh"
},
"polyglot_notebook": {
"kernelName": "pwsh"
}
},
"outputs": [],
"source": [
"#!powershell\n",
"\n",
"dotnet run --project \"..\\DotnetDemo.CApp\\DotnetDemo.CApp.csproj\" --verbosity normal\n",
"\n",
"# n[ormal]日志等级,结果单元中会有很多详细日志"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {
"dotnet_interactive": {
"language": "pwsh"
},
"polyglot_notebook": {
"kernelName": "pwsh"
}
},
"outputs": [],
"source": [
"#!powershell\n",
"\n",
"dotnet run --project \"..\\DotnetDemo.CApp\\DotnetDemo.CApp.csproj\" --verbosity detailed\n",
"\n",
"# d[etailed]日志等级"
]
}
],
"metadata": {
"kernelspec": {
"display_name": ".NET (C#)",
"language": "C#",
"name": ".net-csharp"
},
"language_info": {
"name": "polyglot-notebook"
},
"orig_nbformat": 4,
"polyglot_notebook": {
"kernelInfo": {
"defaultKernelName": "csharp",
"items": [
{
"aliases": [],
"name": "csharp"
}
]
}
}
},
"nbformat": 4,
"nbformat_minor": 2
}