PowerShell 技能连载 - Windows Terminal 定制

适用于 PowerShell 7.0 及以上版本

Windows Terminal 已经成为 Windows 平台上最受欢迎的终端模拟器之一。它支持多标签页、GPU 加速渲染、Unicode 和 UTF-8 字符显示,以及对 WSL、CMD、PowerShell 等多种 Shell 的统一管理。但对于日常重度使用命令行的开发者来说,默认的 Terminal 外观和功能往往不够用——提示符单调、配色平庸、缺少上下文信息,这些都会影响工作效率。

好消息是,借助 PowerShell 7 的强大生态,我们可以通过 Oh My Posh 主题引擎、Profile 脚本自动化以及 Terminal 的 JSON 配置,打造一个既美观又实用的终端环境。从 Git 状态感知的提示符,到一键切换配色方案,再到自定义快捷键绑定,几乎所有的视觉和行为要素都可以按需调整。

本文将从实际场景出发,逐步展示如何用 PowerShell 脚本完成 Windows Terminal 的深度定制。每一段代码都可以直接复制到你的环境中运行,让你在几分钟内拥有一个令人印象深刻的终端工作区。

阅读更多

PowerShell 技能连载 - Active Directory 用户管理

适用于 PowerShell 5.1(Windows),需要 ActiveDirectory 模块及管理员权限

Active Directory 是企业 Windows 网络的身份基础,用户账号的创建、修改、禁用、报告是系统管理员的日常任务。AD 用户管理看似简单——在图形界面里点几下鼠标就行,但当需要批量处理几十上百个账号时,手动操作既耗时又容易出错。PowerShell 的 ActiveDirectory 模块提供了完整的用户生命周期管理能力,从批量创建到权限审计,一条命令就能替代数十次点击。

本文将介绍 AD 用户管理的常用操作和批量自动化方案。

阅读更多

PowerShell 技能连载 - Windows 更新自动化管理

适用于 PowerShell 5.1 及以上版本

操作系统补丁管理是企业安全运维的基石。未打补丁的系统是勒索软件和漏洞攻击的首要目标,每一次重大的安全事件背后几乎都有”未及时安装更新”的影子。然而,Windows 更新管理远比点击”检查更新”复杂得多——需要控制更新时机、筛选更新类别、处理重启策略、验证安装结果,并在多台服务器上保持一致性。

PowerShell 通过 Microsoft.Update.Session COM 对象和 PSWindowsUpdate 模块提供了完整的 Windows 更新编程接口。本文将介绍如何使用 PowerShell 实现 Windows 更新的查询、安装、回滚和自动化管理。

阅读更多

PowerShell 技能连载 - MSI 安装包自动化部署

适用于 PowerShell 5.1 及以上版本

在企业环境中,软件部署是最常见的运维任务之一。MSI(Microsoft Installer)是 Windows 平台上标准的安装包格式,几乎所有企业级软件都提供 MSI 分发方式。手动安装不仅耗时,而且在批量部署场景下几乎不可行。通过 PowerShell 自动化 MSI 安装,可以实现静默安装、参数化配置、日志记录和错误处理,大幅提升部署效率。

随着 DevOps 和基础设施即代码(IaC)理念的普及,将软件安装纳入版本控制的自动化流程已成为标准实践。本文将介绍如何使用 PowerShell 调用 msiexec.exe 完成 MSI 包的自动化安装、卸载和状态检测。

阅读更多

PowerShell 技能连载 - 服务依赖分析与启动顺序

适用于 PowerShell 5.1 及以上版本

Windows 系统中的服务并非孤立运行,许多服务之间存在依赖关系。例如,Web 服务可能依赖 IIS,IIS 又依赖 HTTP.sys 驱动服务;数据库服务可能依赖远程过程调用(RPC)和事件日志服务。当需要批量重启服务、排查启动失败或规划系统迁移时,理清服务之间的依赖链条至关重要。

手动查阅服务的”依赖”选项卡效率低下,尤其是面对多层嵌套的依赖关系时。PowerShell 可以通过 WMI 和 Get-Service 等原生命令递归遍历服务依赖树,自动生成启动顺序报告,甚至可以一键按正确顺序停止和启动一组相互依赖的服务。

本文将介绍如何使用 PowerShell 分析 Windows 服务依赖关系,并生成可视化报告和自动化启停脚本。

阅读更多

PowerShell 技能连载 - 注册表管理

适用于 PowerShell 5.1 及以上版本(Windows)

Windows 注册表是系统配置的核心存储——从系统服务配置到用户偏好,从已安装软件列表到启动项管理,几乎所有 Windows 配置都存储在注册表中。虽然图形界面提供了部分设置入口,但大量高级配置只能通过注册表修改。PowerShell 把注册表当作文件系统来处理,可以像操作文件一样读写注册表项和值。

本文将讲解注册表的操作技巧、常见配置管理场景,以及安全注意事项。

阅读更多

PowerShell 技能连载 - Windows 防火墙规则管理

适用于 PowerShell 5.1 及以上版本(Windows 内置模块)

Windows 防火墙是服务器和终端安全的第一道防线。无论是部署新服务、排查网络故障还是进行安全加固,都离不开防火墙规则的配置与管理。传统的图形界面操作虽然直观,但在批量管理和自动化场景下效率低下,且容易遗漏。

PowerShell 内置的 NetSecurity 模块提供了完整的防火墙管理能力,支持查看、创建、修改和删除规则,所有操作都可以脚本化、可重复执行。对于运维工程师来说,掌握这套命令不仅能提高日常工作效率,更是实现基础设施即代码(IaC)的重要基础。

阅读更多

将 Windows 8.1 的命令提示符替换为 PowerShell

在 Windows 8.1 中,增加了一个“将 WIN+X 菜单中将命令提示符替换为 Windows PowerShell”功能,您注意到了吗?

打开这个选项的方法是:右键单击 Windows 任务栏,选择“属性”。在“导航”选项卡中,您可以找到这个功能。

PowerShell 技术 QQ 群