То, что вы ищете, это %~n0
, %0
- это сам пакетный файл:
@echo off
set var1=%~n0
echo %var1%
pause
%1
и после - для других параметров пакетного файла, например,
tt.cmd
:
@echo off
::add quotes is recommended, to avoid error when there're special characters exist.
set "var0=%~n0"
set "var1=%~n1"
set "var2=%~n2"
echo %var0%
echo %var1%
echo %var2%
Запустить по приглашению:
>tt.cmd what ever
tt
what
ever
или call
из другого пакетного файла, например cc.cmd
:
@call tt.cmd que sera sera
@pause >nul
Вывод:
tt
que
sera
Вы можете проверить call /?
для более подробной информации.