当路径包含法语重音字符时,Powershell Get-ChildItem

问题描述 投票:0回答:1

我需要在 Powershell PSVersion 5.1 中编写一个脚本来发现某些路径名包含 é 的文件。我在命令中使用 -LiteralPath,但 Get-ChildItem 无法正确搜索路径。 é 被错误解释(代码页?)并且找不到路径。 我尝试将 PS 会话代码页更改为 65001(UTF-8?),但无济于事。我所做的大部分阅读都是关于使用 BOM 等对输出进行编码。我正在开发客户提供的盒子,因此我可能会陷入 Powershell 版本的困境,并且我没有提升的权限。 谢谢你。

我尝试在路径前加上 \? 前缀,我使用的是 -LiteralPath,并且我尝试将代码页设置为 65001。

powershell get-childitem codepages
1个回答
0
投票

Get-ChildItem 的选项 Filter 可能会有所帮助:

PS D:\temp> Get-ChildItem -Filter '*é*'


    Directory: D:\temp


Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
-a----        19-10-2024     17:34          13039 tést
-a----        19-10-2024     17:34          13087 tésttést
-a----        19-10-2024     17:39          13134 ésttést
© www.soinside.com 2019 - 2024. All rights reserved.