Я пытаюсь переименовать все файлы, расположенные в одной папке, но в разных подпапках. Файлы должны быть переименованы так, чтобы их имя состояло из foldername + оригинальное имя файла. Мне интересно, если вы могли бы добавить условные операторы, чтобы имя файла не изменилось, если имя файла уже содержит имя папки. Приведенный ниже код выполняет функцию переименования файлов, но не содержит оператора if.
dir -recurse | Rename-Item -NewName {$_.Directory.Name + " - " + $_.Name}
Приведенный ниже код является примером того, как, по моему мнению, будет выглядеть код:
dir -recurse | if($_.Name -contains $_.Directory.Name) {Rename-Item -NewName {$_.Directory.Name + " - " + $_.Name}}