Visual Studio 开发人员命令提示符和开发人员 PowerShell

Visual Studio 包括两个面向开发人员的命令行 shell、命令提示符和 PowerShell 实例,如下所示:

  • Visual Studio 开发人员命令提示符 - 一个标准命令提示符,通过设置某些环境变量,使得使用命令行开发人员工具更加简便。

    显示 clrver 工具的 Visual Studio 2019 开发人员命令提示符的屏幕截图。

    显示 clrver 工具的 Visual Studio 2022 开发人员命令提示符的屏幕截图。

  • Visual Studio 开发人员 PowerShell - 比命令提示符更强大。 例如,可以将一个命令的输出(称为 cmdlet)传递给另一个 cmdlet。 此 shell 设置的环境变量与开发人员命令提示符相同。 自 Visual Studio 2019 起可用。

    Visual Studio 2022 中开发人员 PowerShell 工具的屏幕截图。

Visual Studio 2019开始,Visual Studio 包括一个集成的 终端,可以托管其中任一 shell(开发人员命令提示符和开发人员 PowerShell)。 还可以打开每个 shell 的多个选项卡。 Visual Studio 终端基于 Windows 终端构建。 若要在 Visual Studio 中打开终端,请选择 视图>终端

显示多个选项卡的 Visual Studio 终端窗格的屏幕截图。

显示多个选项卡的 Visual Studio 终端屏幕截图。

提示

本页介绍如何在 Visual Studio 中使用命令行 shell。 如果要在 Visual Studio Code (也称为 VS Code中查找等效项,请参阅 命令行接口(CLI)终端基础知识

从 Visual Studio 作为一个单独的应用程序打开其中一个开发人员 shell,或者在终端窗口中打开其中一个开发人员 shell 时,它会打开转到当前解决方案的目录(如果已加载解决方案)。 通过此行为,可以方便地针对解决方案或其项目运行命令。

这两个 shell 都有特定的环境变量集,使你能够更轻松地使用命令行开发人员工具。 打开其中一个 shell 后,可以输入不同实用工具的命令,而无需知道它们的位置。

常用命令 描述
MSBuild 生成项目或解决方案
dotnet .NET CLI 命令
dotnet run .NET CLI 命令
clrver 用于 CLR 的 .NET Framework 工具
ildasm 用于反汇编的 .NET Framework 工具
CL C/C++ 编译工具
NMAKE C/C++ 编译工具
LIB C/C++ 生成工具
DUMPBIN C/C++ 生成工具

在 Visual Studio 中启动

按照以下步骤从 Visual Studio 中打开开发人员命令提示符或开发人员 PowerShell:

  1. 打开 Visual Studio。

  2. 在菜单栏上,选择 工具>命令行>开发人员命令提示符开发人员 PowerShell

    Visual Studio 2022 中命令行菜单的屏幕截图。

    Visual Studio 2019 中命令行菜单的屏幕截图。

从 Windows 菜单开始

启动 shell 的另一种方法是从“开始”菜单启动。 可能有多个命令提示符,具体取决于 Visual Studio 的版本以及已安装的任何其他 SDK 和工作负载。

Windows 11

  1. 选择“开始”Windows 11 中“开始”按钮的屏幕截图。,然后在“在此处键入以进行搜索”对话框中输入 developer command promptdeveloper powershell

  2. 选择与搜索文本关联的应用结果。

Windows 10

  1. 选择 开始在 Windows 10 中开始按钮的屏幕截图。,然后滚动到字母 V

  2. 展开 Visual Studio 2019Visual Studio 2022 文件夹。

  3. 如果运行的是 Visual Studio 2019,请选择 VS 2019 开发人员命令提示符,或为 VS 2019 选择Developer PowerShell。 如果运行的是 Visual Studio 2022,请选择 VS 2022 开发人员命令提示符,或为 VS 2022 选择Developer PowerShell。

    或者,可以在任务栏的搜索框中键入 shell 的名称,并在结果列表开始显示搜索匹配项时选择所需的结果。

    显示 Windows 10 中的搜索行为的动画。

Windows 8.1

  1. 通过按键盘上的 Windows 徽标键 键盘上 Windows 徽标键的屏幕截图。(举例说明),转到“开始”屏幕

  2. “开始”屏幕上,按 ctrl +Tab 打开 应用 列表,然后按 V。此时会显示一个列表,其中包含所有已安装的 Visual Studio 命令提示符。

  3. 如果运行的是 Visual Studio 2019,请选择 VS 2019 开发人员命令提示符,或为 VS 2019 选择Developer PowerShell。 如果运行的是 Visual Studio 2022,请选择 VS 2022 开发人员命令提示符,或为 VS 2022 选择Developer PowerShell。

从文件浏览器开始

通常,安装的 shell 的快捷方式放置在 Visual Studio 的 开始菜单 文件夹中,例如在 %ProgramData%\Microsoft\Windows\Start Menu\Programs\Visual Studio 2019\Visual Studio Tools中。 但是,如果搜索命令提示符不会生成预期结果,则可以尝试在计算机上手动查找文件。

开发人员命令提示符

搜索命令提示符文件的名称(VsDevCmd.bat),或转到 Visual Studio 的工具文件夹,例如 %ProgramFiles%\Microsoft Visual Studio\2022\Community\Common7\Tools(路径根据 Visual Studio 版本、版本和安装位置更改)。

找到命令提示符文件后,通过在常规命令提示符窗口中输入以下命令将其打开:

"%ProgramFiles%\Microsoft Visual Studio\2022\Community\Common7\Tools\VsDevCmd.bat"

或在 Windows 运行 对话框中输入以下命令:

%comspec% /k "C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\Tools\VsDevCmd.bat"
"%ProgramFiles(x86)%\Microsoft Visual Studio\2019\Community\Common7\Tools\VsDevCmd.bat"

或在 Windows 运行 对话框中输入以下命令:

%comspec% /k "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\Tools\VsDevCmd.bat"

自 Visual Studio 2015 以来,开发人员命令提示符设置 VSCMD_VER 环境变量,其中包含 Visual Studio 的版本信息(例如:17.9.0)。 如果需要检测开发人员命令提示符是否已在控制台中运行,建议检查是否已定义 VSCMD_VER

提示

请确保编辑路径以匹配您所使用的 Visual Studio 版本或版本类型。

开发人员 PowerShell

搜索名为 Launch-VsDevShell.ps1的 PowerShell 脚本文件,或转到 Visual Studio 的工具文件夹,例如 %ProgramFiles(x86)%\Microsoft Visual Studio\2019\Community\Common7\Tools。 (路径根据 Visual Studio 版本、版本和安装位置更改。找到 PowerShell 文件后,通过在 Windows PowerShell 或 PowerShell 6 提示符处输入以下命令来运行它。

对于 Visual Studio 2022:

& 'C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\Tools\Launch-VsDevShell.ps1'

对于 Visual Studio 2019:

& 'C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\Tools\Launch-VsDevShell.ps1'

默认情况下,已为 Visual Studio 安装配置了启动的开发人员 PowerShell,而 Launch-VsDevShell.ps1 文件就位于 Visual Studio 的安装路径中。

提示

必须设置 执行策略 才能运行 cmdlet。

Launch-VsDevShell.ps1 脚本的工作原理是,在 Visual Studio 安装路径中查找 Microsoft.VisualStudio.DevShell.dll PowerShell 模块,加载该模块,然后调用 Enter-VsDevShell cmdlet。 安装的快捷方式(例如“开始”菜单中的快捷方式)会加载模块并直接调用 cmdlet。 建议使用 Launch-VsDevShell.ps1 以交互方式初始化开发人员 PowerShell,或用于编写生成自动化脚本。

命令行参数

可以对 shell、开发人员命令提示符或开发人员 PowerShell 使用命令行参数。

目标体系结构和主机体系结构

对于构建工具(如 C++ 编译器),开发者可以使用相应的命令行参数配置开发者 shell,以创建面向特定 CPU 架构的输出。 还可以使用命令行参数配置生成工具二进制文件的体系结构。 当生成计算机的体系结构不同于目标体系结构时,这非常有用。

提示

从 Visual Studio 2022 开始,无论主机体系结构如何,msbuild 都将默认为 64 位 msbuild.exe 二进制文件。

shell 论点
开发人员命令提示符 -arch=<目标体系结构>
开发人员命令提示符 -host_arch=<主机体系结构>
开发人员 PowerShell -Arch <目标体系结构>
开发人员 PowerShell -HostArch <主机体系结构>

重要

从 Visual Studio 2022 版本 17.1 开始,开发人员 PowerShell 参数 -Arch 和 -HostArch 才可用。

下表列出了支持哪些体系结构,以及它们是否可用于目标体系结构或主机体系结构参数。

建筑 目标体系结构 主机体系结构
x86 违约 违约
amd64 是的 是的
arm 是的
arm64 是的

提示

如果仅设置目标体系结构,shell 会尝试使主机体系结构匹配。 如果只将目标体系结构设置为主机体系结构也不支持的值,这可能会导致错误。

例子

在 64 位计算机上启动 Visual Studio 2019 Community Edition 开发人员命令提示符,创建面向 64 位的生成输出:

"%ProgramFiles(x86)%\Microsoft Visual Studio\2019\Community\Common7\Tools\VsDevCmd.bat" -arch=amd64

在 64 位计算机上启动 Visual Studio 2019 Community Edition 开发人员命令提示符,创建面向 arm 的生成输出:

"%ProgramFiles(x86)%\Microsoft Visual Studio\2019\Community\Common7\Tools\VsDevCmd.bat" -arch=arm -host_arch=amd64

在 64 位计算机上启动适用于 Visual Studio 2022 社区版 版本 17.1 或更高版本的开发人员 PowerShell,以创建面向 arm64 的生成输出:

& 'C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\Tools\Launch-VsDevShell.ps1' -Arch arm64 -HostArch amd64

跳过自动定位

对于开发人员 PowerShell,shell 的起始目录是 Visual Studio 项目位置。 此默认区域设置替代任何其他路径,例如工作目录。 可以使用命令行参数 -SkipAutomaticLocation关闭此行为。 如果希望 shell 在初始化后保留在当前目录中,这非常有用。

可以在 工具>选项>项目 & 解决方案>项目位置中调整项目位置。

可以在 工具>选项>项目 & 解决方案>位置中调整项目位置。

提示

Launch-VsDevShell.ps1 脚本和 Enter-VsDevShell cmdlet 都支持命令行参数 -Arch-HostArch-SkipAutomaticLocation