使用 powershell 批量重命名以删除“-”后面的 9 个字符

bulk rename using powershell to get rid of 9 characters that follow a "-"

我需要重命名大约 5000 个具有以下命名格式的文件:

"322xxx-710yy.tiff"

我需要从名称中删除 -710yy 以获得 322xxxx.tiff

任何人都可以为 power-shell 推荐一个重命名项目命令来做到这一点吗?

我试过了:

    get-childitem -filter "322*" -recurse | Rename-item -NewName{$_.name -replace '-710*', ''}

但所做的只是删除“710”,留下其余字符。

-replace 采用正则表达式,而不是通配符匹配(与 Get-ChildItem-Filter 参数不同),因此您需要

$_.Name -replace '-710[^.]*'

而不是(在这种情况下,您也可以省略 , '',因为它是暗示的)。请注意,我只是替换了 710 之后的非点字符,以保持扩展名不变。