微软于11月10日发布powershell 7.7正式版,新版本基于.net 11,重点调整约束语言模式、远程执行和帮助文件处理等安全机制,同时增加命令能力并修复交互与启动问题。使用自动化脚本的环境需要留意默认uuid类型、json schema外部引用和部分参数校验的变化。

PowerShell官方7.7 GA公告
安全加固涉及多个执行入口
官方列出的变化包括:约束语言模式限制对非核心对象的属性赋值;加强远程执行中的参数和调用帧校验;恢复CIM命令的Schema验证;隐式远程执行的保护覆盖解析后的别名。可更新帮助文件的解包验证更严格,Unix平台临时回退主目录的文件权限也收紧。
Test-Json不再默认解析外部Schema引用,需要通过-FetchExternalReference明确开启。这会影响依赖外部引用的校验脚本,升级时不能只检查JSON文本是否合法。
新增命令与脚本行为调整
New-TemporaryDirectory可创建独立临时目录;Join-Path新增-Extension;格式化命令新增-ExcludeProperty。New-Guid默认生成可按时间排序的UUIDv7,仍需随机UUIDv4的脚本应使用[guid]::NewGuid()。

PowerShell官方说明中的兼容性变化
格式化命令对空或null的-Property参数增加校验;Export-Csv不再接受-Append与-NoHeader同时使用;CSV命令中的-NoTypeInformation已无作用,并产生弃用警告。官方还修复了损坏的用户配置阻止启动、模糊命令匹配重复,以及部分远程清屏和补全行为。
这些变化属于PowerShell 7.7的实际命令行为,不能直接等同于Windows内置Windows PowerShell 5.1的更新。升级前应在对应运行时检查现有脚本所用参数与输出格式。











