概述

PowerShell 是微软开发的跨平台任务自动化与配置管理框架,包含命令行 shell 和脚本语言。与传统 shell 以文本流为核心不同,PowerShell 基于 .NET 对象管道,命令(Cmdlet)之间传递的是结构化对象而非纯文本,这使得数据筛选、变换和格式化更加直观和强大。

版本选择

Windows 自带的 Windows PowerShell(5.1)基于 .NET Framework,已进入维护模式。建议使用 PowerShell 7(基于 .NET Core/.NET),它跨平台支持 Windows/macOS/Linux,性能更好,语法特性更丰富,且持续更新。两者可以并存,PowerShell 7 的可执行文件为 pwsh,与 Windows PowerShell 的 powershell 互不冲突。

常用场景

PowerShell 在 Windows 系统管理、Active Directory 运维、Azure 云资源管理等场景下几乎不可替代。日常开发中也适合用于批量文件操作、环境变量管理、自动化构建脚本等任务。其模块生态(PowerShell Gallery)提供了丰富的扩展,如 PSReadLine(命令行编辑增强)、posh-git(Git 状态提示)、Oh My Posh(提示符美化)等。

一些问题

Atuin 目前暂不支持 pwsh,可通过参考如下方式解决: