Прошел год и решил кое-что модифицировать в скриптах и нашел эту тему
Как писалось выше, этот код позволяет узнать имя файла по расширению в папке в которой расположен .bat файл запущенный.
Код:

@echo off
setlocal enableextensions enabledelayedexpansion
for /f "delims=" %%i in ('dir /b /a:-d "%~dp0*.shp" 2^>nul') do if not defined sFile set sFile=%%i
if defined sFile (echo [%sFile%]) else (echo Not found any [*.shp] files)
endlocal
exit /b
А как мне узнать расширение мя файла по расширению, расположенного в другой папке? например %dir%
пробовал разные варианты - ничего не получается.
вот часть варианта, который я вижу вроде бы правильным, но не работает:
'dir %dir% /b /a:-d "%dir%*.shp" 2^>nul'
в чем ошибка?