Последний скрипт работает на не совсем свежей версии.
Код:

$dirs = gci "C:\Users\MOC\Desktop\book" -recurse | where { $_.psiscontainer }
foreach ($dir in $dirs) {
if ( test-path "$($dir.fullname)\*.pdf" ) {
$files = gci $dir.fullname '*.pdf'
1..$files.count | % { rename-item -lit $files[($_-1)].fullname "$( '{0:d3}' -f $_ ).pdf" }
}}
Rename-Item : Не удается найти параметр, соответствующий имени параметра "lit".
строка:9 знак:43
+ 1..$files.count | % { rename-item -lit <<<< $files[($_-1)].fullname "$(
'{0:d3}' -f $_ ).pdf" }
+ CategoryInfo : InvalidArgument: (:) [Rename-Item], ParameterBin
dingException
+ FullyQualifiedErrorId : NamedParameterNotFound,Microsoft.PowerShell.Comm
ands.RenameItemCommand
переименовал файлы одной дочерней директории""C:\Users\MOC\Desktop\book\pdf"
", не затронул файлы в директории book "C:\Users\MOC\Desktop\book" что не допустило переименовать файлы.
Постойте, скрипт работает со всеми форматами, вот с изображением не хочет работать /*.jpg ?.
Не подумайте что пудрю мозг, навожу порядок.