Рекурсивно добавить расширение для группы файлов в версии PowerShell. 4 - PullRequest
0 голосов
/ 17 февраля 2020

Я смотрю, как рекурсивно добавить расширение ко всей структуре папок. Эта строка делает то, что мне нужно, но только для текущей папки. Мне нужно сделать то же самое для структуры подпапок.

Get-ChildItem -File | % { mv ($_.BaseName+"") ($_.BaseName+".png") }

Но я продолжаю получать эту ошибку:

Cannot find path 'C:\Users\Jess...\' because it does not exist.

Я использовал поиск, однако я нашел решение только для Bash, а не для PowerShell. Поэтому я не мог заставить -Recurse работать таким же образом.

Get-ChildItem -File -Recurse | % { mv ($_.BaseName+"") ($_.BaseName+".png") }

1 Ответ

0 голосов
/ 17 февраля 2020

Вот способ получить полный путь. В powershell 6 это не проблема.

Get-ChildItem -File -Recurse | % { $_ | mv -destination ($_.Name + '.png' ) -whatif }

или

Get-ChildItem -File -Recurse | ? { ! $_.extension } | 
  mv -destination { $_.Name + '.png' } -whatif
...