2016-03-04 4 views
0

У меня есть 1 изображение в каждой из папок, и я хочу переименовать их все в «ISO». я хочу, чтобы это выглядело как-тоPowershell: Как переименовать все «.jpg» в папки?

Folder1 -sub1 ISO.jpg -sub2 ISO.jpg -sub3 ISO.jpg и так далее.

сейчас все картины под подразделами # имеют разные имена, я хочу переименовать их все ISO Это то, что я знаю, чтобы сделать с переименованием

Dir | Rename-Item -NewName {$ _. Name -replace "", "ISO"}

Я знаю, что это заменит все пространства ISO, но это не то, что я хочу. Мой главный вопрос - это то, что первый аргумент для -replace должен быть независимо от имени файла.

+0

'-replace' принимает регулярное выражение в качестве первого параметра, так что' -replace, «*.» «ISO.jpg» «сделало бы это. Но если имя, которое вы хотите, исправлено, почему бы не просто «-NewName {« ISO.jpg »}'? (Это не отправлено как ответ, потому что вам нужно будет что-то сделать для работы с вложенными папками и переименовать только файлы, которые вы хотите, а не каждый файл) – TessellatingHeckler

+0

'Dir * .jpg | rename-item -newname {$ _. name -replace '$ _. name', 'ISO'} ', попробуйте это и дайте мне знать, если он работает (извините, не проверено). –

ответ

0

Вот моя версия, очевидно, если есть больше JPEGs внутри вложенное это может вызвать исключение:

Get-ChildItem .\sub*\*.jpg | rename-item -NewName ISO.jpg 
+0

вот оно! большое спасибо. Это отлично работает в моем случае, так как у меня есть только 1 изображение в каждой папке –

Смежные вопросы