如何一次重命名多个文件并替换特定字符而不影响其他字符

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

我要替换这98个看起来像这样的文件中的前两个数字

10 10HZ.mp3
11 11HZ.mp3
12 12HZ.mp3

带有“ Bass Mekanik-”,使其看起来像这样

Bass Mekanik - 10HZ.mp3
Bass Mekanik - 11HZ.mp3
Bass Mekanik - 12HZ.mp3

我在CMD上尝试了很多不同的组合,例如这样

*重命名“ ?? ???????。mp3”“低音Mekanik-????。mp3”

但是没有任何效果。我想在每个文件上保留最后4个字符。

而且在不久的将来,我还需要在每个文件(不包括这些文件以及具有很多其他字符的其他文件)上添加“ Bass Mekanik-”,而无需进行其他任何更改。到目前为止,我学习了如何使用

删除前两个字符

*重命名“ ?? ???????。mp3”“ // ????。mp3”

然后我尝试添加“ Bass Mekanik”,但出现错误“存在重复的文件名或文件找不到。”我希望这是可能的...

powershell file-rename
1个回答
0
投票

这应该做您所需要的,如果您对结果满意,请删除WhatIf。>

保留文件名的最后4个字符(带“ .mp3”的8个字符)和带有“ Bass Mekanik”的前缀的字符>

Get-ChildItem | % { $_.FullName -match ".{8}(?<=\.mp3$)" | Out-Null ; Rename-Item -LiteralPath $_.FullName -NewName ( "Bass Mekanik " + $Matches.Values ) -WhatIf }

用“ Bass Mekanik”前缀当前文件名

Get-ChildItem | % { Rename-Item -LiteralPath $_.FullName -NewName ("Bass Mekanik" + $_.Name ) -WhatIf }
© www.soinside.com 2019 - 2024. All rights reserved.