Как переименовать несколько файлов одновременно и заменить определенные символы, не затрагивая другие символы - PullRequest
0 голосов
/ 25 сентября 2019

Я хочу заменить первые два числа в этих 98 файлах, которые выглядят следующим образом

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

, на "Bass Mekanik -" и сделать его похожим на

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

IЯ пробовал много разных комбинаций на CMD, как это

* переименуйте "?? ????. mp3" "Bass Mekanik - ????. mp3"

Но ничего не работает,Я хочу сохранить последние 4 символа в каждом файле.

Также в ближайшем будущем мне нужно будет добавить «Bass Mekanik -» перед каждым файлом (кроме этих файлов, других файлов, которые имеют многодругих персонажей), ничего не меняя.До сих пор я узнал, как удалить первые 2 символа, используя

*, переименуйте "?? ????. Mp3" "// ????. Mp3"

Затем я попытался добавить«Bass Mekanik», но выдает ошибку «Дублированное имя файла существует или файл не найден».Я надеюсь, что это возможно ...

1 Ответ

0 голосов
/ 26 сентября 2019

Это должно делать то, что вам нужно, удалите WhatIf, если вас устраивают результаты

Сохраните последние 4 (8 с ".mp3") символа имени файла и префикса с "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 }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...