@ECHO off & SETLOCAL EnableDelayedExpansion
SET "_dir=" REM Must finish with '\'
SET "_ext=jpg"
SET "_toEdit=Vacation2010"
SET "_with=December"
FOR %%f IN ("%_dir%*.%_ext%") DO (
CALL :modifyString "%_toEdit%" "%_with%" "%%~Nf" fileName
RENAME "%%f" "!fileName!%%~Xf"
)
GOTO end
:modifyString what with in toReturn
SET "__in=%~3"
SET "__in=!__in:%~1=%~2!"
IF NOT "%~4" == "" (
SET %~4=%__in%
) ELSE (
ECHO %__in%
)
EXIT /B
:end
Этот скрипт позволяет изменить имя всех файлов, которые содержат Vacation2010
с тем же именем, но с December
вместо Vacation2010
.
Если вы копируете и вставляете код, вы должны сохранить .bat
в той же папке с фотографиями.
Если вы хотите сохранить скрипт в другом каталоге [E.G. у вас есть любимая папка для утилит] вы должны изменить значение _dir
с путем к фотографиям.
Если вам нужно выполнить ту же работу для других фотографий [или других файлов _ext
], вам нужно изменить значение _toEdit
на строку, которую вы хотите изменить [или стереть], и значение _with
со строкой, которую вы хотите поместить вместо _toEdit
[SET "_with="
, если вы просто хотите стереть строку, указанную в _toEdit
].