C: \ newpic.jpgC: \ newpic.jpgEsta é o que o PowerShell é perfeito para:
ls "C:\files" -Recurse -Filter "*.jpg" | ForEach{ cp "C:\newpic.jpg" $_.FullName -WhatIf }
a versão mais detalhada é:
Get-ChildItem "C:\files" -Recurse -Filter "*.jpg" | ForEach-Object { Copy-Item "C:\newpic.jpg" -Destination $_.FullName -WhatIf }
A primeira parte faz um loop em todos os arquivos jpg em C: \, incluindo todos os subdiretórios. A segunda parte pega cada um desses arquivos e sobrescreve com o novo arquivo.
Os comandos acima, na verdade, apenas informam o que eles farão sem fazer isso, remova o -WhatIf para executar a operação de cópia.