当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] PowerShell 7.3 中的新增功能

作者:精品下载站 日期:2024-12-14 03:00:59 浏览:13 分类:玩电脑

PowerShell 7.3 中的新增功能


PowerShell 7.3 是下一个稳定版本,基于 .NET 7.0 构建。

PowerShell 7.3 包含以下功能、更新和重大更改。

重大变化和改进

  • 在此版本中,为了合规性,更新或删除了 Windows API,这意味着 PowerShell 7.3 无法在 Windows 7 上运行。虽然不再支持 Windows 7,但以前的版本可以在 Windows 7 上运行。
  • 仅 Windows 10 版本 1809 及更高版本支持适用于 Hyper-V 的 PowerShell Direct。
  • 由于 .NET 7 中的故意破坏性更改,Test-Connection 被破坏。它由 #17018 跟踪
  • clean 块添加到脚本块,作为 beginprocessend 的对等体,以方便资源清理(第15177章
  • $PSStyle.OutputRendering 的默认值更改为 Host
  • 使 Out-StringOut-File 保持字符串输入不变 (#17455)
  • 将 System.Security.AccessControl.ObjectSecurity 的类型数据定义移至 Microsoft.PowerShell.Security 模块 (#16355)(感谢 @萨佐诺夫!)

    • 在此更改之前,用户无需显式导入 Microsoft.PowerShell.Security 模块即可使用为 System.Security.AccessControl.ObjectSecurity 实例定义的代码属性>。
  • 进行此更改后,用户需要显式导入 Microsoft.PowerShell.Security 模块才能使用这些代码属性和代码方法。

选项卡补全改进

  • PowerShell 7.3 包含 PSReadline 2.2.6,默认情况下启用预测 IntelliSense。有关详细信息,请参阅 about_PSReadLine。
  • 修复为 ValidateScriptAttribute 指定的脚本块内的制表符补全。 (#14550)(感谢@MartinGC94!)
  • break/continue 之后添加了循环标签的制表符补全 (#16438)(感谢 @MartinGC94!)
  • 改进多种场景下的哈希表补全 (#16498)(感谢 @MartinGC94!)

    • 参数泼溅
  • Invoke-CimMethodArguments 参数
  • Get-WinEventFilterHashtable 参数
  • CIM cmdlet 的属性参数
  • 从成员完成场景中删除重复项
  • 支持网络共享(UNC 路径)补全中的正斜杠 (#17111)(感谢 @sba923!)
  • 改进成员自动完成 (#16504)(感谢 @MartinGC94!)
  • 优先考虑参数的 ValidateSet 完成而不是枚举 (#15257)(感谢 @MartinGC94!)
  • 添加对带有类型参数的泛型方法的类型推断支持 (#16951)(感谢 @MartinGC94!)
  • 改进类型推断和补全 (#16963)(感谢 @MartinGC94!)

    • 允许在 ForEach-Object -MemberName 的完成结果中显示方法
  • 防止返回 void 的表达式完成,如 ([void](""))
  • 当类完成基于 AST 时,允许显示非默认类构造函数
  • 改进 $_ 的类型推断 (#17716)(感谢 @MartinGC94!)
  • 修复 ICollection 的类型推断 (#17752)(感谢 @MartinGC94!)
  • 防止完成变量时删除大括号 (#17751)(感谢 @MartinGC94!)
  • 为字典的索引表达式添加补全 (#17619)(感谢 @MartinGC94!)
  • 修复属性标记的类型完成 (#17484)(感谢 @MartinGC94!)
  • 改进动态参数选项卡补全 (#17661)(感谢 @MartinGC94!)
  • 在值前面完成参数时避免绑定位置参数 (#17693)(感谢 @MartinGC94!)
  • 改进的错误处理

    • 为带有重定向的命令表达式正确设置 $? (#16046)
    • 修复使用 $PSNativeCommandUseErrorActionPreference 时的转换错误 (#15993)
    • 使本机命令错误处理可选择遵循 ErrorActionPreference (#15897)
    • 将非零退出代码 ErrorRecord 的可执行路径指定为 TargetObject (#16108)(感谢 @rkeithhill !)

    会话和远程处理改进

    • -Options 添加到 PSRP over SSH 命令,以允许直接传递 OpenSSH 选项 (#12802)(感谢 @BrannenGH!)
    • -ConfigurationFile 参数添加到 pwsh,以允许使用 .pssc 文件中定义的会话配置启动新进程 (#17447)
    • 添加对在非 Windows 平台上使用 New-PSSessionConfigurationFile 的支持 (#17447)

    更新的 cmdlet

    • -HttpVersion 参数添加到 Web cmdlet (#15853)(感谢 @hayhay27!)
    • 添加对 Web cmdlet 对开放式输入标签的支持 (#16193)(感谢 @farmerau!)
    • 修复 ConvertTo-Json -Depth 以允许最多 100 个 (#16197)(感谢 @KevRitchie!) @rkeithhill!)
    • 改进使用 $using: 表达式调用 Invoke-Command 时的变量处理 (#16113)(感谢

    您需要 登录账户 后才能发表评论

    取消回复欢迎 发表评论:

    关灯