PowerShell 技能连载 - WMI 与 CIM 查询

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

Windows Management Instrumentation(WMI)是 Windows 操作系统内置的管理信息基础设施,它以统一的接口暴露了硬件、操作系统、应用程序的海量信息——从 CPU 温度到磁盘健康状态,从进程列表到安装的补丁,几乎所有系统信息都可以通过 WMI 获取。PowerShell 通过 CIM(Common Information Model)cmdlet 提供了对 WMI 的现代化访问方式。

本文将系统讲解 WMI/CIM 的核心概念、查询语法、常用场景,以及如何构建高效的信息采集脚本。

阅读更多

PowerShell 技能连载 - Desired State Configuration

适用于 PowerShell 5.1 及以上版本(Windows),PowerShell 7 需安装 PSDesiredStateConfiguration 模块

在运维领域,”配置漂移”是一个永恒的痛点——服务器的实际状态随时间推移逐渐偏离预期配置,导致难以排查的故障和安全隐患。微软的 Desired State Configuration(DSC)正是为解决这个问题而设计的声明式配置管理框架。与 Ansible、Chef、Puppet 类似,DSC 让你用代码定义服务器”应该是什么样”,然后由系统自动确保配置一致。

本文将介绍 DSC 的核心概念、如何编写配置脚本、推拉两种工作模式,以及在 PowerShell 7 中使用 DSC 的注意事项。

阅读更多

PowerShell 技能连载 - SSH 远程管理

适用于 PowerShell 7.0 及以上版本(跨平台)

传统上,PowerShell 远程管理依赖 Windows 专属的 WinRM 协议和 Enter-PSSession 命令。但随着 PowerShell 7 的跨平台演进,以及混合云环境的普及,基于 SSH 的远程管理已成为官方推荐的新标准。SSH 不仅天然支持 Linux/macOS,还能在 Windows 上与 OpenSSH 无缝集成,实现真正的跨平台远程操作。

本文将从安装配置 OpenSSH 开始,逐步讲解如何通过 SSH 建立 PowerShell 远程会话、传输文件、执行远程命令,以及在生产环境中配置密钥认证和跳板机。

阅读更多

PowerShell 技能连载 - 脚本签名与执行策略

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

在企业环境中,PowerShell 是双刃剑:它既是运维人员最强大的自动化工具,也是攻击者最常滥用的攻击载体。从 Mimikatz 到勒索软件,大量恶意行为都依赖 PowerShell 执行。因此,微软提供了两层防护机制——执行策略(Execution Policy)代码签名(Code Signing),帮助组织控制哪些脚本可以运行、哪些脚本应该被拦截。

本文将系统讲解执行策略的各个级别与作用域、如何获取和使用代码签名证书对脚本进行签名、如何验证签名有效性,以及如何在团队中建立可落地的签名工作流。

阅读更多

PowerShell 技能连载 - 错误处理与日志最佳实践

适用于 PowerShell 7.0 及以上版本

在编写生产级 PowerShell 脚本时,错误处理和日志记录往往是最容易被忽视、却又最为关键的环节。一段没有错误处理的脚本,在遇到网络超时、文件缺失或权限不足时,要么静默失败导致后续逻辑产生难以排查的连锁错误,要么直接崩溃让整个自动化流程中断。而缺乏日志的脚本则如同”黑盒”——出了问题只能靠猜测,无法追溯根因。

PowerShell 提供了丰富的错误处理机制,从基础的 $ErrorActionPreference 到完善的 try/catch/finally 结构,再到自定义错误记录和结构化日志输出。本文将系统性地介绍这些机制,并给出带重试逻辑的健壮脚本模板,帮助你在生产环境中写出更可靠的自动化代码。

阅读更多

PowerShell 技能连载 - 系统性能监控实战

适用于 PowerShell 7.0 及以上版本

在服务器运维和 DevOps 实践中,系统性能监控是保障业务稳定运行的基石。无论是排查突发的性能抖动,还是进行容量规划和趋势分析,都需要一套可靠的监控手段。传统的 GUI 工具(如任务管理器、perfmon)虽然直观,但不适合自动化场景和大规模服务器管理。

PowerShell 提供了对 WMI/CIM 类、.NET 性能计数器和系统 API 的完整访问能力,让我们可以用脚本化的方式采集、分析和导出系统性能数据。本文将介绍如何使用 PowerShell 构建一套实用的系统性能监控方案,涵盖 CPU、内存、磁盘、进程、网络等关键指标。

阅读更多
PowerShell 技术 QQ 群