核心要点
- PowerShell 和 Windows 终端均是命令行工具,允许用户通过输入文本命令管理 Windows 系统。
- Windows 终端是一个终端模拟器,可以模仿命令行 shell 的操作方式和特性,包括命令提示符和 PowerShell。
- Windows 终端拥有现代化的标签式界面,并提供了丰富的自定义选项,如字体、配色方案和渲染设置。
对于 Windows 11 或 Windows 10 的用户,PowerShell 和 Windows 终端通常会预装在系统中。 这两个工具都允许你通过键入文本命令来完成各种任务,但它们之间到底存在哪些差异呢?
PowerShell 是对命令提示符的升级
微软于 2006 年推出了 PowerShell,旨在提升用户在命令提示符下的操作体验。PowerShell 基于 .NET Framework 构建,允许用户使用 .NET 语言和基于文本的命令与操作系统进行交互。其中,最常用的语言是 C#,它能够帮助用户解锁工具的高级功能并提高工作效率。
除了常规命令外,PowerShell 还提供了超过 200 个 cmdlet,这是一种特殊的 C# 类,微软将其定义为“轻量级命令”。 cmdlet 的数量会因系统中安装的模块而异。当 PowerShell 执行这些 cmdlet 时,会返回一个可以被操作的 .NET 对象。例如,这使得用户不仅可以与计算机上由 .NET Core 支持的程序进行交互,还可以处理它们的输入,而无需编写复杂的代码。
另外,PowerShell 除了可以像 CMD 一样运行批处理文件外,还支持在 PowerShell 中安排任务,以节省时间,实现更高的自动化,从而更好地规划用户的操作流程。
Windows 终端是一个终端模拟器
Windows 终端是微软在 2019 年(Windows 10 时代)推出的一个终端模拟器。它的主要作用是模拟命令行 shell 的行为和功能,包括命令提示符和 PowerShell。 这个应用程序最显著的特点是为 Windows 引入了社区用户长期以来所羡慕的 Linux 命令行工具:BASH (Bourne Again SHell)。
要在 Windows 终端中运行 BASH 和其他 Linux shell,如 ZSH、FISH 和 Ksh (KornShell),需要先启用 Windows Subsystem for Linux (WSL)。此外,还可以在 Windows 终端中运行 Azure Cloud Shell,从而允许用户在 Windows 终端内管理 Azure 资源。
用户界面和自定义
Windows 终端最引人注目的特点之一是它采用了现代的标签式界面,允许用户并排运行多个命令行实用工具。例如,用户可以同时运行多个命令提示符实例,或者在运行 PowerShell、BASH 或 Azure 时同时进行。这是 PowerShell 无法实现的。
PowerShell 和 Windows 终端的用户界面都支持自定义。在 PowerShell 中,用户可以在一定程度上通过修改字体、字体颜色和提示来个性化环境。Windows 终端则提供了更丰富的自定义选项,包括调整起始配置文件设置、配色方案、交互和渲染选项。
值得注意的是,用户也可以在 Windows 终端中使用预设的配色方案来定制 PowerShell 的外观。
Unicode 和 UTF 支持
Windows 终端由于其对 Unicode 和 UTF 的支持,允许用户使用其他语言的表情符号和字符。结合其新的加速 GPU 文本渲染引擎,它可以毫无压力地显示非标准字符。例如,用户可以从网站复制表情符号并将其粘贴到 Windows 终端中,它会正确显示。
虽然 PowerShell 也支持 Unicode 和 UTF,但用户可能会遇到编码问题,如特定字符显示错误或存在限制。对于其他语言的字符和表情符号尤其如此。相比之下,Windows 终端在这方面提供了更好的用户体验。
Windows 终端和 PowerShell 都是开源项目,拥有活跃的社区参与其开发。这两个社区都对各自的项目充满热情,并持续支持他们的应用程序、改进其性能和增加新功能。同时,Windows 终端和 PowerShell 都有大量的文档可供参考,用户可以轻松找到论坛、教程和指南,以帮助他们有效地使用这些工具。
Windows 终端就是您所需要的
PowerShell 将 .NET Framework 的强大功能带入命令行环境,而 Windows 终端则可以在 Windows 计算机上模拟各种 shell,包括来自 Linux 的 shell。此外,与 PowerShell 相比,Windows 终端还提供了更丰富的自定义选项和更好的 Unicode/UTF 支持。
虽然这些工具中的每一个都非常强大,但实际上,用户无需在单独使用 PowerShell,因为 Windows 终端本身就可以模拟 PowerShell 环境。