“运维改善”标签的文章
带有“运维改善”标签的文章共 20 篇,按发布日期从新到旧排列。
-
用 winget + PowerShell 自动化 PC 装机 ── 让操作手册可执行
本文整理了让新员工电脑的初始设置具备可复现性的方法,涵盖通过 winget 进行应用安装与 export/import、WinGet Configuration 的声明式配置、用 PowerShell 补充的设置,直至无人值守执行时的注意事项。
-
PowerShell 的安全加固 ── 日志・AMSI・语言模式・JEA
本文整理了在不禁止 PowerShell 的前提下安全使用它的实务要点,讲解启用脚本块日志与转录、禁用 AMSI 与旧版本引擎的绕过路径、通过语言模式加以限制,直至用 JEA 进行权限委任。
-
用 Get-WinEvent 实务排查事件日志 ── 筛选速度决定调查时间
本文整理用 PowerShell 提升 Windows 事件日志调查效率的方法,涵盖用 Where-Object 筛选为何缓慢、FilterHashtable 与 XPath 的区分使用、重启・登录・应用异常终止的调查方法,直至多台计算机的日志收集。
-
PowerShell 模块的内部分发与更新 ── PSResourceGet 与内部仓库
本文整理了如何摆脱复制共享文件夹中的 ps1 反复使用的运维方式。内容涵盖模块清单的编写方法、版本管理、用 PSResourceGet 构建内部仓库并进行分发与更新,直至与签名的配合使用。
-
用 PSScriptAnalyzer 守护 PowerShell 脚本质量 ── 规则选型与 CI 导入
本文是将 PowerShell 静态分析工具 PSScriptAnalyzer 引入企业内部脚本的实务指南,讲解应最先启用的规则、配置文件的写法、对既有资产的分阶段导入,直至通过 GitHub Actions 实现 CI 化的完整流程。
-
用 PowerShell 与 REST API 集成 ── Invoke-RestMethod 的实务
本文整理从 PowerShell 调用内部系统 API 与 SaaS REST API 的实务做法,涵盖认证请求头的传递方式、日语 JSON 乱码的应对、4xx/5xx 错误处理、429 重试、分页,直至代理与 TLS 的陷阱。
-
PowerShell脚本运行慢时该看哪里 ── 数组・管道・匹配的诀窍
整理 PowerShell 脚本变慢的常见原因。从数组 += 导致 O(n^2) 的原理、管道与 foreach 的差异、匹配的哈希表化、文件 I/O 的改善,到正确的测量方法,从实务角度进行讲解。
-
不再使用 Write-Host ── PowerShell 的输出流与日志设计
本文整理 PowerShell 六个输出流的用法区分、Write-Host 存在的问题与正确的使用场景、函数返回值被污染的原因、通过 -Verbose 与 -InformationVariable 实现调用方控制,以及结构化日志的留存方法。
-
Microsoft Graph PowerShell 入门 ── AzureAD・MSOnline 废弃后的 Microsoft 365 运维
本文是将 AzureAD・MSOnline 模块废弃后的 Microsoft 365 运维迁移到 Microsoft Graph PowerShell 的实务指南,讲解连接与作用域设计、基于证书的无人值守执行,以及用户盘点、许可证汇总等常用脚本。
-
PowerShell 的并行处理 ── ForEach-Object -Parallel 与作业(Job)的选用之道
本文从实务角度整理 ForEach-Object -Parallel、Start-ThreadJob、Start-Job 的区别与选用之道,$using: 与线程安全性,ThrottleLimit 的确定方法,以及反而会变慢的情形。
-
从 PowerShell 正确调用外部 exe ── 参数引用、退出代码与乱码的陷阱
从 PowerShell 调用 robocopy 或公司内部 EXE 时,参数会损坏、拿不到退出代码、输出还会出现乱码。本文从实务角度整理 PowerShell 7.3 的参数传递变更、停止解析令牌 --%、以及 Start-Process 的使用区分。
-
这个批处理文件,应该迁移到 PowerShell 吗?── cmd/bat 资产盘点与迁移判断
用判断表梳理企业内部遗留的批处理文件(bat)是否应迁移到 PowerShell。对比 cmd 与 VBScript 的境遇差异、错误不会中止等 bat 特有的弱点、过渡期的写法、命令改写对照表与迁移步骤。
-
PowerShell 中凭据的安全处理方式 ── 把明文密码逐出脚本
本文整理将 PowerShell 脚本中的明文密码迁移到安全存储的步骤。讲解 SecureString 的真实面貌与局限、Export-Clixml 基于 DPAPI 保存的原理,直至 SecretManagement/SecretStore 的适用场景。
-
PowerShell 脚本的参数设计与模块化 ── 从「能运行的脚本」到「可以交给别人的脚本」
本文整理把 PowerShell 脚本提升到可以交给他人使用的品质的具体步骤,讲解 param 块与 [CmdletBinding()]、输入验证、管道输入、-WhatIf 支持、.psm1 模块化,直至内部共享与 Git 管理的要点。
-
用 PowerShell 盘点文件服务器 ── 容量调查与访问权限(ACL)审计
用 PowerShell 对文件服务器进行盘点的实务步骤。整理容量调查与访问拒绝的记录、旧文件清单与重复候选的哈希提取、通过 Get-Acl 进行权限审计与继承中断检测、生成 CSV 报表、与 icacls 的分工使用,以及 Set-Acl 的安全变更步骤。
-
PowerShell Remoting(WinRM)入门 ── 批量管理多台 Windows
PowerShell Remoting(WinRM)批量管理多台 Windows 的入门指南。整理其原理与端口 5985/5986、Enable-PSRemoting 会做的事情、工作组环境的 TrustedHosts、Invoke-Command 与 PSSession、second hop 问题,以及安全运维...
-
Windows PowerShell 5.1 与 PowerShell 7 的区别 ── 企业内部脚本迁移实务指南
整理 Windows PowerShell 5.1 与 PowerShell 7 的关系(共存与 pwsh.exe)、5.1 不再新增功能的官方方针、编码差异导致的乱码、用 #Requires 进行防御,直至任务计划程序更新的迁移步骤。
-
PowerShell 的错误处理与重试设计 ── 从 try/catch 失效的陷阱到 exit code、重试的实务定式
本文从实务角度整理 PowerShell 终止错误与非终止错误的区别、try/catch 失效陷阱与 -ErrorAction Stop 的应对定式、用 $LASTEXITCODE 判断成败、exit code 设计,直至指数退避重试的完整流程。
-
PowerShell 的执行策略与脚本签名 ── 从「用 Bypass 蒙混过关」的运维方式毕业的实务指南
PowerShell 的执行策略『不是安全边界,而是一种安全装置』。本文梳理 RemoteSigned 等策略的差异、作用域的优先顺序、Mark of the Web 与 Unblock-File、脚本签名,以及公司内部分发的现实运维方式。
-
PowerShell 脚本进阶 ── 安全地实现日志排查、归档与报表自动化
本文整理了用 PowerShell 脚本安全推进日志排查、CSV 报表、旧日志归档、留存记录,直至任务计划程序执行的实务步骤。