Просто чтобы ответить конкретно на ваш вопрос:
@echo off
set "a=C:\Some\Random\File\Path.txt"
for %%i in (%a%) do echo %%~nxi
pause
Также посмотрите, как я использовал двойные кавычки для set
переменной. Это позволяет нам избавиться от любого необходимого пробела после значения, а также, если мы добавим кавычки после равенства, они станут частью значение, которое не то, что мы действительно хотим.
Чтобы понять ссылки на переменные, для от cmdline for /?
Я предлагаю вам также увидеть set /?
Кроме того, на основании вашего комментария, если вы хотите установить его как viarble, просто сделайте это:)
@echo off
set "a=C:\Some\Random\File\Path.txt"
for %%i in (%a%) do set variablename=%%~nxi
echo %variablename%
pause