Prueba con esto:
@echo off
set carpeta=d:\carpeta prueba
pushd %carpeta%
for /f "tokens=*" %%i in ('dir /b /a-d *.*') do if not "%%~xi" == ".JPG" if not "%%~xi" == ".jpg" echo del "%%i"
Popd
Este BAT te permite elegir la carpeta sobre la que quieres actuar poniéndola como valor de la variable CARPETA. Si, como dices, prefieres no tener que elegir carpeta sino simplemente copiar el BAT en la carpeta sería algo así:
@echo off
for /f "tokens=*" %%i in ('dir /b /a-d *.*') do if not "%%~xi" == ".JPG" if not "%%~xi" == ".jpg" echo del "%%i"
Las dos versiones se limitan a hacer ECHO del comando de borrado de los archivos afectados. Una vez que compruebes que van a hacer lo que quieres quita el ECHO que precede al comando DEL para que haga el borrado de verdad