PowerShell 7.5 中的新增功能
PowerShell 7.5-preview.3 包括以下功能、更新和中断性变更。 PowerShell 7.5 基于 .NET 9.0.0-preview.3 构建。
有关更改的完整列表,请参阅 GitHub 库中的更改日志。
重大更改
- 修复在使用
PathType
时Test-Path
的-OlderThan
和-NewerThan
参数和日期范围 (#20942)(感谢 @ArmaanMcleod!)- 以前,如果一起指定,将忽略
-OlderThan
- 以前,如果一起指定,将忽略
- 将
New-FileCatalog -CatalogVersion
默认值更改为 2 (#20428)(感谢 @ThomasNieto!) - 阻止在受限远程处理会话中从网络位置获取帮助 (#20593)
- Windows 安装程序现在记住使用的安装选项,并使用这些选项来初始化用于下一次安装的选项 (#20420)(谢谢 @reduckted!)
ConvertTo-Json
现在将BigInteger
序列化为数字 (#21000)(谢谢 @jborean93!)
更新的模块
PowerShell 7.5-preview.3 包含以下更新的模块:
- Microsoft.PowerShell.PSResourceGet v1.0.5
- PSReadLine v2.3.4
Tab 自动补全改进
非常感谢 @ArmaanMcleod 和其他人在改进选项卡补全方面的所有贡献。
- 当无法从安全表达式检索哈希表键值时回退到类型推理 (#21184)(谢谢 @MartinGC94!)
- 对
$_
进行类型推理时修复回归 (#21223)(谢谢 @MartinGC94!) - 使用 Tab 自动补全在 Windows 上将
~
展开到$home
(#21529) - 不要在声明参数名称和类成员时完成 (#21182)(谢谢 @MartinGC94!)
- 当选项卡补全类型名称时防止回退到文件补全 (#20084)(感谢 @MartinGC94)
- 为
Set-StrictMode
添加参数补全器到-Version
(#20554)(感谢 @ArmaanMcleod!) - 为
Get-Verb
/Get-Command
和重构Get-Verb
添加-Verb
参数补全器 (#20286)(感谢 @ArmaanMcleod) - 为
Start-Process
添加-Verb
参数补全器 (#20415)(感谢 @ArmaanMcleod) - 为
*-Variable
、*-Alias
和*-PSDrive
命令添加-Scope
参数补全器 (#20451)(感谢 @ArmaanMcleod) - 为
Save-Help
/Update-Help
命令添加-Module
补全 (#20678)(感谢 @ArmaanMcleod)
Web Cmdlet 的改进
- 修复指定
-Resume
时报告正确大小的Invoke-WebRequest
(#20207)(感谢 @LNKLEO!) - 修复 Web Cmdlet 以允许
WinForm
应用正常工作 (#20606)
其他 cmdlet 改进
Get-Process
:删除-IncludeUserName
的管理员要求 (#21302)(谢谢 @jborean93!)- 修复
Test-Path -IsValid
以检查无效的路径和文件名字符 (#21358) - 将
RecommendedAction
添加到错误报告的ConciseView
(#20826)(谢谢 @JustinGrote!) - 为
Remove-Item
cmdlet 添加了进度栏 (#20778)(谢谢 @ArmaanMcleod!) - 修复 .NET 8 更改导致的
Test-Connection
(#20369) - 修复
Get-Service
非终止错误消息以包括类别 (#20276) - 将
-Empty
和-InputObject
参数添加到New-Guid
(#20014)(感谢 @CarloToso!) - 将别名
r
添加到Get-ChildItem
命令的参数-Recurse
(#20100)(感谢 @kilasuit!) - 为仍然缺少别名的函数将
LP
添加到LiteralPath
别名 (#20820) - 将隐式本地化回退添加到
Import-LocalizedData
(#19896)(感谢 @chrisdent-de!) - 将
Aliases
添加到在对Get-Help
所返回参数的帮助内容格式化时显示的属性 (#20994) - 将
HelpUri
添加到Remove-Service
(#20476) - 修复 SCCM 提供程序的完成崩溃(#20815、#20919、#20915)(感谢 @MartinGC94!)
- 修复在
-Tail 0
和-Wait
一起使用时Get-Content
中的回归 (#20734)(感谢 @CarloToso!) - 修复
Start-Process -PassThru
以确保返回的Process
对象可访问ExitCode
属性 (#20749)(感谢 @CodeCyclone!) - 修复
Group-Object
以对其输出使用当前区域性 (#20608) - 修复使用内插字符串的
Group-Object
输出 (#20745)(感谢 @mawosoft!) - 修复网络
PSDrive
的DisplayRoot
呈现问题 (#20793) - 修复
Copy-Item
进度,仅在复制完所有文件时显示已完成 (#20517) - 修复 UNC 路径完成回归 (#20419)(感谢 @MartinGC94!)
- 无效的
-ExecutionPolicy
传递给pwsh
时将报告错误 (#20460) - 添加 WinGetCommandNotFound 和 CompletionPredictor 模块来跟踪使用情况 (#21040)
- 将 DateKind 参数添加到
ConvertFrom-Json
(#20925)(感谢 @jborean93!) - 将 DirectoryInfo 添加到 New-Item 的 OutputType (#21126)(感谢 @MartinGC94!)
- 修复数组值的 1 个序列化 (#21085)(感谢 @jborean93!)
引擎改进
- 添加遥测以在导入模块时检查特定标记 (#20371)
- 将
PSAdapter
和ConsoleGuiTools
添加到模块加载遥测允许列表 (#20641) - 添加 Winget 模块以跟踪使用情况 (#21040)
- 记录 WDAC ETW 事件时确保文件名不为 null (#20910)(感谢 @jborean93!)
- 修复 WDAC 日志记录功能引入的四个回归 (#20913)
- 在未重定向输入、输出和错误时保留输入、输出和错误句柄未设置 (#20853)
- 修复隐式远程处理代理 cmdlet 以处理常见参数 (#20367)
- 找不到模块时在错误消息中包含模块版本 (#20144)(感谢 @ArmaanMcleod!)
- 修复当文件不是可执行文件时处理
setuid
和sticky
的unixmode
(#20366) - 修复在构造程序集路径时利用程序集来使用 Path.Combine 的问题 (#21169)
- 在语义检查期间验证用于命名空间的值,以防止声明无效的命名空间 (#21162)
实验性功能
- 为 Windows 本机可执行文件添加波浪号展开 (#20402)(感谢 @domsleee!) 有关详细信息,请参阅 PSNativeWindowsTildeExpansion