PowerShell 技能连载 - 安全编码实践

适用于 PowerShell 5.1 及以上版本

安全编码不是可选项,而是生产环境的基本要求。PowerShell 脚本经常处理凭据、连接字符串、API 密钥等敏感信息,如果处理不当,这些信息可能泄露到日志文件、版本控制系统、甚至被恶意代码利用。从凭据管理、输入验证、代码签名,到审计日志和合规检查,PowerShell 提供了完整的安全工具链。

本文将讲解 PowerShell 安全编码的核心实践,帮助构建安全可靠的自动化脚本。

阅读更多

PowerShell 技能连载 - Web 数据采集

适用于 PowerShell 5.1 及以上版本

运维和开发中经常需要从网页获取数据——监控服务状态页、采集系统指标、下载最新版本的工具、从内部管理平台提取报表。PowerShell 内置的 Invoke-WebRequest 可以发送 HTTP 请求并解析 HTML,结合正则表达式和 HTML 解析能力,可以高效完成大部分数据采集任务。

本文将讲解 HTTP 请求、HTML 解析、表单提交、会话管理,以及浏览器自动化技术。

阅读更多

PowerShell 技能连载 - AI 服务集成

适用于 PowerShell 5.1 及以上版本,调用 AI API 需要网络访问和 API 密钥

2025 年,大语言模型(LLM)已经从实验性工具变成了生产力基础设施的一部分。PowerShell 作为自动化运维的核心语言,可以很自然地与 AI 服务集成——用自然语言生成运维脚本、让 AI 分析日志错误、构建智能告警系统、甚至搭建本地的 AI 助手。无论是调用云端 API(OpenAI、Azure OpenAI)还是本地模型(Ollama),PowerShell 都能胜任。

本文将讲解如何在 PowerShell 中调用 AI 服务、处理响应流,以及构建实用的 AI 驱动运维工具。

阅读更多

PowerShell 技能连载 - 剪贴板与 GUI 互操作

适用于 PowerShell 5.1 及以上版本(Windows),剪贴板功能需要 Windows 环境

PowerShell 不仅仅是命令行工具——它可以与 Windows 图形界面深度交互。从读写剪贴板、弹出消息框、打开文件对话框,到操控 GUI 窗口和发送按键,PowerShell 可以成为连接命令行和桌面操作的桥梁。在日常工作中,这些功能可以大幅简化重复性的 GUI 操作。

本文将讲解剪贴板操作、消息框、文件对话框,以及窗口自动化的技巧。

阅读更多

PowerShell 技能连载 - 进度反馈与用户体验

适用于 PowerShell 5.1 及以上版本

长时间运行的脚本如果不给用户任何反馈,就像一个”黑盒”——用户不知道脚本在做什么、进度如何、是否卡死了。良好的进度反馈是区分”能用”和”好用”脚本的关键。PowerShell 提供了 Write-Progress 命令用于显示进度条、Write-Verbose 用于详细输出、Write-Debug 用于调试信息,合理使用这些机制可以大幅提升脚本的用户体验。

本文将讲解 PowerShell 的反馈机制、进度条设计,以及如何构建用户友好的自动化脚本。

阅读更多

PowerShell 技能连载 - 错误处理设计模式

适用于 PowerShell 5.1 及以上版本

“程序能工作”和”程序能可靠地工作”之间的差距,往往就在于错误处理。PowerShell 的错误处理机制比大多数脚本语言更丰富——有终止错误和非终止错误的区分、有 $ErrorActionPreference 全局设置、有 try/catch/finally 结构、有 -ErrorVariable 参数。理解这些机制并设计合理的错误处理模式,是编写生产级脚本的关键。

本文将系统讲解 PowerShell 的错误处理机制、常见设计模式,以及如何构建可靠的自动化脚本。

阅读更多

PowerShell 技能连载 - HTML 报告生成

适用于 PowerShell 5.1 及以上版本

运维报告是沟通技术状态的桥梁——无论是每日健康检查报告、月度容量报告还是安全审计报告,格式清晰、内容直观的 HTML 报告远比纯文本或截图有效。PowerShell 的 ConvertTo-Html 命令可以将任何对象集合转为 HTML 表格,结合自定义 CSS 样式和 Here-String 模板,可以快速生成专业级的报告。

本文将讲解 HTML 报告的生成技巧、样式定制、邮件发送,以及实用的报告模板。

阅读更多

PowerShell 技能连载 - 文件系统监控进阶

适用于 PowerShell 5.1 及以上版本(Windows),FileSystemWatcher 需要 .NET Framework/Core

文件系统监控是自动化运维的重要能力——监控配置文件变更触发服务重载、监控上传目录自动处理新文件、监控日志目录异常增长告警。.NET 的 FileSystemWatcher 类提供了操作系统级的文件变更通知机制,比轮询扫描高效得多。结合 PowerShell 的事件处理能力,可以构建响应迅速的文件系统自动化工作流。

本文将讲解 FileSystemWatcher 的高级用法、事件处理模式,以及实用的自动化场景。

阅读更多

PowerShell 技能连载 - YAML 与 TOML 配置处理

适用于 PowerShell 7.0 及以上版本

YAML 和 TOML 是现代配置文件的两大主流格式。YAML 以其可读性和丰富的数据类型支持,被 Kubernetes、Docker Compose、GitHub Actions 等广泛采用;TOML 则以简洁明了著称,是 Rust、Python 项目的首选配置格式。PowerShell 原生支持 JSON 和 XML,但处理 YAML 和 TOML 需要借助第三方模块。本文将讲解如何在 PowerShell 中高效处理这两种配置格式。

阅读更多

PowerShell 技能连载 - Microsoft Graph API 集成

适用于 PowerShell 5.1 及以上版本,需安装 Microsoft.Graph 模块

Microsoft Graph 是 Microsoft 365 平台的统一 API 网关——它整合了 Azure AD(现称 Entra ID)、Exchange Online、SharePoint、Teams、OneDrive 等所有 Microsoft 365 服务的数据和操作。通过 PowerShell 的 Microsoft.Graph 模块,运维人员可以用脚本化管理用户、组、许可证、设备策略等,替代传统的多个独立模块。

本文将讲解 Microsoft Graph PowerShell 的连接、用户管理、组操作和常用自动化场景。

阅读更多
PowerShell 技术 QQ 群