Get-ChildItem 递归匹配正则表达式模式并重命名该项目

Get-ChildItem 递归匹配正则表达式模式并重命名该项目

我正在尝试递归获取包含“ (1)”的子项,我想删除此部分。这是我目前得到的结果,但它会引发错误。请帮忙。

Get-ChildItem -recurse | Where{$_.Name -Match "\s{1}\(1\)"} | Rename-Item -NewName { $_.name -replace ' \(1\)', ''}

谢谢

答案1

这对我有用:

Get-ChildItem -recurse | Where{$_.Name -like "*(1)*"} | Rename-Item -NewName { $_.name -replace '\s*\(1\)', ''} -Verbose

它捕获带有和不带有前导空格的 (1) 并将其删除。

相关内容