Aqui está uma solução de trabalho usando FOR / D / R
@echo off
for /d /r %%F in (*) do (
if /i "%%~nxF" == "view_pictures" ren "%%F" "2017_%%~nxF"
if /i "%%~nxF" == "personal_pictures" ren "%%F" "2017_%%~nxF"
if /i "%%~nxF" == "scenic_pictures" ren "%%F" "2017_%%~nxF"
)
Ou simplificado com um loop extra
@echo off
for /d /r %%F in (*) do for %%A in (view personal scenic) do (
if /i "%%~nxF" == "%%A_pictures" ren "%%F" "2017_%%~nxF"
)
Ou você pode usar a solução FOR / F que LotPings publicou.
Você também pode usar meu utilitário de renomeação de expressão regular JREN.BAT . JREN é um script puro (JScript / batch híbrido) que é executado nativamente em qualquer máquina Windows do XP em diante - não é necessário nenhum arquivo exe de terceiros.
jren "^" "2017_" /s /d /fm "scenic_pictures|personal_pictures|view_pictures"