@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
Questo script consente di modificare il nome di tutti i file che contengono Vacation2010
con lo stesso nome, ma con December
invece di Vacation2010
.
Se si copia e incolla il codice, è necessario salvare lo .bat
nella stessa cartella delle foto. Se si desidera salvare lo script in un'altra directory [E.G. hai una cartella preferita per le utilità] devi cambiare il valore di _dir
con il percorso delle foto.
Se si deve fare lo stesso lavoro per altre foto [o altri file changig _ext
] è necessario modificare il valore della _toEdit
con la stringa che si desidera cambiare [o eliminare] e il valore della _with
con la stringa vuoi mettere invece di _toEdit
[SET "_with="
se vuoi semplicemente cancellare la stringa specificata in _toEdit
].
È possibile, come [XYplorer] (http://www.xyplorer.com/), che ho usato per pochi anni, fino a quando non ho smesso di usare Windows a casa. Ha un'interfaccia di ridenominazione batch per gestire questa situazione senza programmazione, e vale la pena, tutto intorno. –
@Roger Anche Bulk Rename Utility (http://www.bulkrenameutility.co.uk) è uno strumento molto valido ed è gratuito. – bluish